数据结构
线性结构
- 数组(列表)
线性结构就是能用一根线串起来的结构
"""
1、申请数组的前提条件是:内存是连续的
2、int a[7] :代表声明一个数组是a,数组大小是7,数组的元素都是整型
一个数长度是4个字节所以7个是28个字节
3、如何申请内存:在C, C++ 语言中,mallco(28)申请28个字节,用完后要释放: free(28)
4、如果 int a[7] = [1, 2, 3, 4, 5, 6, 7] 那如何知道 a[3] = 4的?
a[3] = 首地址(1000) + 索引(3) * 长度(4)= 1012--1015
5、首地址是保存在数组名中的
"""
- 链表(约瑟夫问题、丢手绢问题)
"""
数组要一块连续的内存空间来存储,对内存的要求比较高。如果我们申请一个 100MB 大小的数组,当内存中没有连续的、足够大的存储空间时,即便内存的剩余总可用空间大于 100MB,仍然会申请失败。 而链表恰恰相反,它并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用,所以如果我们申请的是 100MB 大小的链表,根本不会有问题。
"""
Only you can control your future
You're not alone. You still have family,peopel who care for you and want to save you.