c语言——关于顺序表的应用

c语言——关于顺序表的应用,第1张

首先你的外层for循环少了{},所以外层循环一次就结束了,而你输入的数据来看,·1 是有重复的,所以循环结束后t=1 , 所以if(t==0)这条没走,k还是0,再后面循环输出的结果 n-k =10 , 输出10 ,

而后面输出数组b时,由于b数组没有改变,也没有初始化,所以输出系统给分配的乱八糟的。

总之,你外层for 循环少了{} ,修改如下:

for(i=0; i<n; i++)

{

for(j=i+1; j<n; j++)

{

}

if(t==0)

{

}

}

顺序表是最简单的数据组织方式,具有易用、空间开销小以及对数据元素进行高效随机存取的优点,但也具有不便插入和查询的操作与需要预先分配存储空间的缺点,是静态数据存储方式的理想选择。

链表的优缺点与顺序表相反,适用于经常进行插入和查询操作的线性表,也适用于无法确定长度和长度经常性变化的线性表,但具有不便于按位序号进行存取操作,不能进行随机存取的缺点,是动态数据存储方式的理想选择。

数位顺序表在我们研究数时起了便于计算和排列得作用,数位顺序表指各个计数单位所占的位置的顺序表,如万所占的位置是万位。

数字上的每个数字都有其相应的计数单位,如个位的计数单位是个,十位的计数单位是十。每相邻两个计数单位之间的进率是10。

顺序表的访问是很灵活的。从时间效率上来说是O(1)的。而删除与增加操作,却很花费时间,时间复杂度O(n)。而链表的增加与删除是很快捷的。但其访问却很花费时间。如果在做大型项目时。需要两者兼具,那么就可以用hash表。

之于前两者应用场合,举个简单的例子,著名的“猴子报数问题”就能够明显的比较链表与数组的差别。

欢迎分享,转载请注明来源:浪漫分享网

原文地址:https://hunlipic.com/meirong/5628674.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-09-04
下一篇2023-09-04

发表评论

登录后才能评论

评论列表(0条)

    保存