C语言链表逆序技巧

时间:2011-06-24 关注公众号 来源:网络

  简洁的做法是

  遍历链表,

  元素进栈,

  遍历的同时销毁原来的链表。

  元素出栈,

  建立新链表。

  高效的是,

  用指向链表结点指针的指针操作

  直接首尾交换指针值(两两进行)

  一般的是前插法

  实际上根本就不用插入,一次遍历就可以完成了。

  链表的逆序,必将涉及到两个以上指针,一般用三个指针,

  下面是一个人的程序:

  struct List1 *reverse(List1 *h) //h为链表的头指针

  {

  struct List1 *p,*v1,*v2;

  v2=h;

  v1=NULL;

  while( v2!=NULL ){

  p=v2->pNext;

  v2->pNext=v1;

  v1=v2;

  v2=p;

  }

  return v1;

  }

  另一个人的:

  struct IntNode* res(struct IntNode* h)

  {

  struct IntNode *s, *s1;

  s = h;

  h = NULL;

  while (s)

  {

  s1 = s;

  s = s->next;

  s1->next = h;

  h = s1;

  }

  return h;

  }

  算法都是一致,但顺序不一样,这直接点明了链表操作的核心——顺序,链表的算法主要难在顺序上。

  逆序操作中,要将一个指针指向前一个节点,中间必然断开,这就需要两个指针指向断开处的一前一后。

  上面两个程序都是这样,不同在于指针移动的位置。

阅读全文
扫码关注“ 多特资源库
更多更全的软件资源下载
文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站)
玩家热搜
pottermore官网中文测试入口
幸福宝8008app官网入口
春天去江西旅游欣赏到的美景
漫画天堂官网直接进入
对方朋友圈入口不见了
中国gec登录网址
以下选项中,不属于《中华人民共和国核安全法》赋予公众的权利的是()。
《中华人民共和国香港特别行政区维护法》规定,不具有香港特别行政区永久性居民身份的人实施本法规定的犯罪的()。
根据《反间谍法》规定,对协助机关工作或者依法检举、控告的个人和组织,任何个人和组织不得()。
党的二十大报告指出,中国提出了全球发展倡议、全球安全倡议,愿同国际社会一道努力落实。中国坚持对话协商,推动建设一个持久和平的世界;()。
党的二十大报告指出,我们要坚持以()为宗旨、以()为根本、以()为基础、以军事科技文化社会安全为保障、以促进国际安全为依托,统筹外部安全和内部安全、国土安全和国民安全、传统安全和非传统安全、自身安全和共同安全,统筹维护和塑造,夯实和社会稳定基层基础,完善参与全球安全治理机制,建设更高水平的平安中国,以新安全格局保障新发展格局。
党的二十大报告指出,在社会基层坚持和发展新时代“枫桥经验”,完善正确处理()机制,加强和改进人民信访工作,畅通和规范群众诉求表达、利益协调、权益保障通道,完善网格化管理、精细化服务、信息化支撑的(),健全城乡社区治理体系,及时把矛盾纠纷化解在基层、化解在萌芽状态。

相关攻略

正在加载中
版权
版权说明

文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站)

电话:13918309914

QQ:1967830372

邮箱:[email protected]

toast