c/c++双链表正排序

原创 2011年01月11日 13:23:00

#include<stdio.h> 
#include<stdlib.h> 
#include<malloc.h> 
struct list{ 
  int data; 
  struct list *next; 
  struct list *pre; 
  }; 
typedef struct list node; 
typedef node *link; 
link front=NULL,rear,ptr,head=NULL; 

link push(int item){ 
link newnode=malloc(sizeof(node)); 
 newnode->data=item; 
 if(head==NULL)
 {
 head=newnode; 
 head->next=NULL; 
 head->pre=NULL;
 rear=head;
 }
 else
 {
 rear->next=newnode;
 newnode->pre=rear;
 newnode->next=NULL;
 rear=newnode;
 }
 return head; 
 } 

void makenull(){           
 front=NULL; 
 rear=NULL; 
 } 

empty(){ 
  if(front==NULL) 
   return 1; 
  else 
   return 0; 
  } 

int tops(){ 
   if(empty()) 
    return NULL; 
   else 
    return rear->data; 
   } 

void pop(){ 
   if(empty()) 
    printf("stack is empty!/n"); 
   else 
    rear=rear->pre; 
   } 

void display(link l){ 
    link p; 
    p=l; 
    while(p!=NULL){ 
      printf("%d->",p->data); 
      p=p->next; 
    } 


void main(){ 
int n,i; 
printf("input your first data!/n"); 
scanf("%d",&n); 
front=push(n); 
   /*another data*/ 
for(i=0;i<3;i++) 

 printf("input:/n"); 
 scanf("%d",&n); 
 push(n); 

 ptr=front; 
 display(ptr); 
 printf("/n Please enter any key to pop"); 
getch();
 pop(); 
 ptr=front; 
 display(ptr); 
getch();

}


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/normallife/archive/2008/12/01/3419197.aspx

C/C++ 八大排序算法

转自 http://blog.csdn.net/hguisu/article/details/7776068 目录(?)[+] 概述 排序有内部排序和外部排序,内部排序是数据记录在内...
  • chy555chy
  • chy555chy
  • 2016年07月27日 13:13
  • 1116

c语言实现直接插入排序(正序和逆序)

#include struct DataType { int data; }; struct Sqlist { DataType R[20]; int length; }; //直接插入排...
  • jiujiu28
  • jiujiu28
  • 2015年09月07日 09:03
  • 1139

<C/C++算法> 八大经典排序算法的性能对比与总结

一,各排序算法的思想及其稳定性 (1)冒泡排序 冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想...
  • EbowTang
  • EbowTang
  • 2014年06月10日 20:05
  • 6038

C/C++自带排序函数——Sort,QuickSort

1.Sort 用法: 前面需要加: #include using namespace std; 默认为升序排序, 举例用法:int main() { int array[100],i,n; w...
  • B08370108
  • B08370108
  • 2015年01月22日 14:45
  • 663

[C/C++标准库]_[初级]_[标准库里提供的排序算法]

sort() stable_sort() partial_sort() reverse() nth_element() qsort() 场景: 1. C/C++的algorithm里提供的算法一...
  • infoworld
  • infoworld
  • 2014年01月27日 15:53
  • 2124

#算法#C/C++#排序--桶排序

偶然听见学姐说考研机试要考CCF,然而自己啥都不会,好忧心,想想自己曾经也考过CCF, 可是~~~~ 因此,打算从头开始新的过程,(然而并不是重新做人,只是想好好学习吧)。 言归正传,本人水平有...
  • Happy_Yu_Life
  • Happy_Yu_Life
  • 2017年04月14日 19:16
  • 305

C/C++实现快速排序

快速排序算法(quickSort)是最常用的排序算法之一
  • yOung_One
  • yOung_One
  • 2014年11月08日 23:04
  • 1289

[C/C++基础知识] 一篇就让你彻底搞懂qsort快速排序的文章

最近在做LeetCode的题目、面试和笔试后发现经常考察快速排序的知识。通过这篇文章介绍,能让你彻底的了解和学习快排,主要从一下三个部分进行介绍: 一.C语言实现qsort快速排序 ...
  • Eastmount
  • Eastmount
  • 2015年10月11日 05:45
  • 4239

【排序算法】选择排序(C++实现)

选择排序算法就是每一趟从待排序的记录中选出关键字最小(最大)的记录,顺序放在已排好序的子文件的最后(最前),直到全部记录排序完毕。常见的选择排序有直接选择排序(Selection Sort),堆排序(...
  • left_la
  • left_la
  • 2013年03月10日 16:01
  • 15381

C/C++实现快速排序和随机快速排序

快速排序采用分治的思想进行排序,算法直接对数组对a[p,p+1,p+2,p+3.....r](符号代表的是数组a:a[p],a[p+1],a[p+2].....a[r])进行操作,主要分为三步: 分解...
  • jediknight23
  • jediknight23
  • 2016年05月23日 22:08
  • 228
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: c/c++双链表正排序
举报原因:
原因补充:

(最多只允许输入30个字)