插入代码实现
//从链表的头部开始遍历 t = 1; while(t != 0) { //如果当前结点下一个结点的值大于待插入数,将数插到中间 if(date[right[t]] > date[len]) { right[len] = right[t]; //新插入的数的下一个结点标号等于当前结点的下一个标号 right[t] = len; //当前结点的下一个结点编号就是新插入数的编号 break; //插入完成跳出循环 } t = right[t]; }
代码实现
#include <stdio.h> int main() { int date[101],right[101]; int i,n,t,len; //读入已有的数 scanf("%d",&n); for(i = 1;i <= n;i++) scanf("%d",&date[i]); len = n; //初始化数组right for(i = 1;i <= n;i++) { if(i != n) right[i] = i + 1; else right[i] = 0; } //直接在数组date的末尾加一个数 len++; scanf("%d",&date[len]); //从链表的头部开始遍历 t = 1; while(t != 0) { //如果当前结点下一个结点的值大于待插入数,将数插到中间 if(date[right[t]] > date[len]) { right[len] = right[t]; //新插入的数的下一个结点标号等于当前结点的下一个标号 right[t] = len; //当前结点的下一个结点编号就是新插入数的编号 break; //插入完成跳出循环 } t = right[t]; } //输出链表中的所有数 t = 1; while(t != 0) { printf("%d",date[t]); t = right[t]; } return 0; }
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!