数据结构的问题 菜鸟很多地方不懂

来源:百度知道 编辑:UC知道 时间:2024/06/19 16:14:36
1 看书看到最简单的线性表 知道在顺序结构中要建新表要定义最大长度~!然后不够用再增加
源程序代码是
#define LIST_INIT_SIZE 100 //初始分配100
#define LISTINCREMENT 10 //分配增量

我的问题是 如果一直不够 一直分下去 下面肯定有重要的单元储存重要的东西 如果一直+10 +10的增加下去 肯定会冲突的啊~!

2看到串的时候知道 串和线性表一样可以顺序存储和链式存储 在顺序存储的时候 建立新串的时候也要定义好分配量 但是串为什么不能和线性表一样定义增量呢? 如果一开始定义100 后面不够怎么办?

3 C语言中为什么不能用动态分配的一维数组来实现循环队列呢?

4 我到现在还没有明白时间复杂度是什么东西~!
请高手指教

1.这个应该是动态数组的问题了,系统中通常从新申请一个大的空间来储存数据,然后将原来数组中的数据复制到新的空间中,最后释放原先的空间,也就是说会在一个新的有足够空间的地方申请空间,原先的会被抛弃
2.不知道什么是串,但是原理可以参看上替
3.有人说不可以么?
4.时间复杂度是用来描述程序执行效率的,通常会假设当数量n趋于无穷时其对应程序需要执行的次数