- 浏览: 1482194 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
临时笔记,创建一个链表
单向链表翻转
#include <stdlib.h> #include <stdio.h> typedef struct node* link; struct node {int item;link next;}; int main(int argc,char * argv[]){ int i,N=atoi(argv[1]); link t =malloc(sizeof *t),x=t; t->item=1;t->next=t; for(i=2;i<=N;i++){ x=(x->next=malloc(sizeof *x)); x->item=i;x->next=t; } x=t; // for(i=1;i<=N;i++){ while(x->next!=t){ printf("%d\n",x->item); x=x->next; } } ~
单向链表翻转
#include <stdlib.h> #include <stdio.h> typedef struct node* link; struct node {int item;link next;}; int main(int argc,char * argv[]){ int i,N=atoi(argv[1]); struct node *t ,*x; t=malloc(sizeof *t),x=t; t->item=1;t->next=t; for(i=2;i<=N;i++){ x=(x->next=malloc(sizeof *x)); x->item=i;x->next=t; } x=t; for(i=1;i<=N;i++){ printf("%d\n",x->item); x=x->next; } //---------翻转开始--主要是temp节点存住了要变化的节点 struct node *s,*temp; s=t; for(i=1;i<=N;i++){ temp=s; s=s->next; temp->next=t; t=temp; } //---------翻转结束 x=t; for(i=1;i<=N;i++){ printf("%d\n",x->item); x=x->next; } }
发表评论
-
weak_ptr解决循环引用问题
2021-03-08 21:12 1191C++11引入的三种智能指 ... -
gcc链接顺序
2019-10-12 18:25 653代码在 https://github.com/killinux ... -
c++11的function和bind
2019-09-10 16:12 538参考:https://www.cnblogs.co ... -
opengl的helloworld
2014-10-22 19:41 9091.我提供一个不需要配置环境就可运行的源码。 glut.h放在 ... -
画图板用c++实现和用js实现的websocket版本
2014-10-17 13:02 2134画图板 opencv的c++ #include <o ... -
c语言内存
2014-07-02 10:26 6981、C中内存分为五个区 栈:用来存放函数的形参和函数内的局部变 ... -
重定向stdout到文件
2014-03-05 18:37 5490把stdout重定向到文件 两种方法: 第一种方法没有恢复 ... -
通过nginx远程执行shell
2014-03-03 10:26 5098saltstack远程执行shell,远程管理等返回json已 ... -
c的urldecode
2014-02-28 18:22 1368#include <stdio.h> #in ... -
pthread的pthread_mutex_lock 的使用
2014-02-25 16:54 26157参考http://haoningabc.iteye.com/b ... -
c调用c++
2013-10-12 15:24 1182参考 http://www.cppblog.com/frank ... -
用C语言,实现接收管道输出的结果,并显示
2013-04-23 21:35 1950在shell里利用“|”管道干的事情就是io重定向,把“|”命 ... -
关于char * 与 char[]
2013-04-22 21:56 966问题引入: 在实习过程中发现了一个以前一直默认的错误,同样ch ... -
trie 树 的代码
2012-12-14 23:20 1144想起搜狐老大的一句话 看代码先看h文件,擦,当初感觉他这句话很 ... -
指针函数与函数指针的区别
2012-12-14 22:44 1204一、 1、指针函数是指带指针的函数,即本质是一个函数。函数返回 ... -
指针和数组
2012-11-14 22:40 1075转载http://kan.weibo.com/con/3512 ... -
js备份
2012-10-31 23:56 1730<!DOCTYPE HTML PUBLIC " ... -
线程的helloworld
2012-10-30 21:51 1610#include<stdio.h> #inc ... -
c的书籍
2012-10-30 10:56 1133http://www.acm.uiuc.edu/webmonk ... -
深入理解计算机系统第三章笔记 gcc
2012-10-24 12:11 1534随便写个最简单程序 然后gcc -S 看汇编 在gcc -C ...
相关推荐
本文将详细讲解如何在C#中实现单向链表,结合源码解析来帮助你深入理解其内部机制。 首先,我们要知道什么是单向链表。单向链表是由一系列节点组成,每个节点包含两个部分:数据域和指针域。数据域存储实际的数据,...
在本文中,我们将深入探讨如何实现单向链表的各种操作,包括建立链表、添加元素、删除元素、翻转链表(包括递归方法)、合并链表、查找链表中的回路以及定位回路的起点。 1. **建立链表** 建立链表通常从创建一个...
单向链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的引用。在编程中,经常需要对链表进行各种操作,其中之一就是逆转链表。逆转链表的操作可以改变链表中节点的顺序,使得原本的...
一种方法是先分别遍历两个链表,记录各自的长度,然后从较长链表的头节点开始,按照长度差向后移动,直到与较短链表的某个节点相遇,那个节点即是交点。另一种方法是使用双指针,让一个指针从头节点开始,另一个指针...
单向链表是最简单的链表类型,其特点是每个节点只能向前遍历,不能向后。在某些情况下,我们需要对链表进行倒序操作,即将链表的顺序反转,例如将A->B->C转换为C->B->A。这个过程是Intel面试中常见的一个问题,旨在...
单向链表是一种基本的数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的引用。在某些情况下,我们可能需要反转链表,即将链表的前后顺序颠倒。本篇文章将详细介绍如何使用递归和非递归两种方法来实现...
翻转链表需要注意的一点是:链表之间靠指针连接,如果贸然将某个节点的next指向其他节点,就有可能造成该节点的丢失,所以翻转链表时(单向或双向),都要注意保存它的周围环境。 时间复杂度:O(n) 空间复杂度:O(1)...
链表分为单向链表和双向链表,前者只能向前遍历,而后者可以向前或向后遍历。在C语言中,实现链表通常涉及定义结构体来表示节点,并提供插入、删除、遍历等操作的函数。 接着,集合(Set)是一种不包含重复元素的...
单链表的各种操作,适合于初学,也适合于复习 单链表操作介绍 1. 创建头节点 ...12. 面试中常见:单链表翻转 13. 已知两个链表head1和head2各自有序,请把它们合并成一个链表依然有序,要求用递归方法
1. 单向链表:每个节点只有一个指针,即指向其后继节点,不能向前查找。 2. 循环链表:最后一个节点的指针返回指向第一个节点,形成一个循环。 3. 双向链表:每个节点有两个指针,分别指向前后两个节点,可以双向...
- **类型**:链表分为单向链表、双向链表和循环链表等。 - **特性**: - 动态存储分配,灵活高效。 - 插入、删除操作简单快速。 - 存储空间不连续,不适合随机访问。 #### 知识点二:单向链表反转原理 - **反转...
翻转单向链表 237 删除链表元素 203 删除链表多个元素 206 翻转链表 141 环形链表 2021-05-15: 876 获取链表中间节点 20 判断括号是否成对 2021-05-16: 150后缀表达式 224基本计算器 856计算括号分数 232 用栈实现...
1) **反转单向链表**:实现反转单向链表的算法。 2) **根据值删除节点**:在链表中删除具有特定值的所有节点。 3) **删除倒数节点**:删除链表中的倒数第N个节点。 4) **有序链表去重**:删除链表中的重复元素。 5) ...
对于链表翻转的问题,题目给出了正确答案,这是通过交换当前节点与其后继节点的链接来实现的。这个算法在链表的每个节点上迭代,直到达到尾部,最后将头指针更新为原来的尾节点。 最后,关于JavaScript的题目,删除...
单向链表结构定义如下: struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; 1、翻转链表 递归解法 设置递归函数的返回值为翻转后链表的首节点 递归终止条件为空节点或节点...
单向链表中涉及链表中两个节点需要相互比较的场景 单项链表指针修改(翻转,两侧插入等涉及多点指针修改场景) 常见题目 找到链表的中间节点-快慢指针 翻转链表-pre,op, post多指针 dummy node/哨兵节点 使用场景 ...
8. **判断单向链表是否有环**: - 使用快慢指针(Floyd算法),快指针每次移动两个节点,慢指针每次移动一个节点。如果存在环,快指针最终会追上慢指针;若不存在环,快指针会先到达链表尾部。 9. **判断字符串...
该设计旨在解决约瑟夫环问题,即使用单向循环链表来模拟约瑟夫环的过程,输出各个人的编号。该设计使用了一个链表来存储每个人的编号和密码,并使用循环来实现约瑟夫环的过程。 该设计的主要功能是提供用户从键盘...