链表的逆转(头插法)
来源:互联网 发布:淘宝网拍模特兼职 编辑:程序博客网 时间:2024/05/14 16:00
最主要的部分:
void reverse(node*head){ node*p,*q; p=head->next; head->next=NULL; while(p) { q=p; p=p->next; q->next=head->next; head->next=q; }}
#include<stdio.h>#include<malloc.h>#include<iostream>using namespace std;typedef struct node{ int data; struct node*next; }node; node*creat() { node*head,*p,*q; char ch; head=(node*)malloc(sizeof(node)); q=head; ch='*'; puts("单链表尾插法,?结束"); while(ch!='?') { int a; cin>>a; p=(node*)malloc(sizeof(node)); p->data=a; q->next=p; q=p; ch=getchar(); } q->next=NULL; return(head); } void print(node*a) { puts("print "); a=a->next; while(a!=NULL) { printf("%d ",a->data); a=a->next; } } void reverse(node*head){ node*p,*q; p=head->next; head->next=NULL; while(p) { q=p; p=p->next; q->next=head->next; head->next=q; }} int main() { node*a; a=creat(); print(a); reverse(a); puts("\nhaved reversed:"); print(a); return 0; }
阅读全文
0 0
- 链表的逆转(头插法)
- 链表的逆转
- 链表的逆转
- 基本链表的逆转
- 算法:链表的逆转
- //链表的原地逆转
- C++ 链表的递归逆转和循环逆转
- 头插法实现逆转链表
- 逆转链表(栈)
- 链表的逆转(使用栈和动态数组)
- 链表的逆转 -- java实现
- 链表逆转的一个算法
- 链表的输入输出以及就地逆转
- 链表的k子段逆转
- 总结:单向链表的逆转
- 链表的输入输出及逆转
- 链表逆转的两种方法
- 链表逆转(递归+非递归)
- TF-day2 神经网络基础知识
- 防守打法
- Lintcode94 Binary Tree Maximum Path Sum solution 题解
- The type java.lang.reflect.Type cannot be resolved异常的处理
- 执行shell时某些操作使用sudo执行又不想每次输入密码的解决方式
- 链表的逆转(头插法)
- JVM垃圾回收算法及回收器详解
- Rancher 官方在线培训-教学视频链接及内容目录
- jquery优化keyup事件
- D-City(HDU4496)
- PAT(Basic Level)_1040_有几个PAT
- assign、retain和copy的区别
- 喷水装置(一)
- 本地git仓库提交到远程仓库(或切换server地址)