life02

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  197 随笔 :: 3 文章 :: 37 评论 :: 0 Trackbacks
 1#include <iostream>
 2using namespace std;
 3
 4typedef struct LNode{
 5    int data;
 6    struct LNode* next;
 7}
Linklist;
 8
 9void disList(Linklist* L){
10    Linklist* p=L->next;
11    while(p!=NULL){
12        cout<<p->data<<" ";
13        p=p->next;
14    }

15    cout<<endl;
16}

17
18void creatList(Linklist *&L,int* a,int n){
19
20    Linklist* s;
21    int i;
22    L=(Linklist*)malloc(sizeof(Linklist));
23    L->next=NULL;
24    for (i=0;i<n;i++)
25    {
26        s=(Linklist*)malloc(sizeof(Linklist));
27        s->data=a[i];
28        s->next=L->next;
29        L->next=s;
30    }

31}

32
33
34void sort_list(Linklist *&head){
35    Linklist *p=head->next,*q,*r;
36    if (p!=NULL)
37    {
38        r=p->next;
39        p->next=NULL;
40        p=r;
41        while(p!=NULL){
42            r=p->next;
43            q=head;
44            while(q->next!=NULL && q->next->data<p->data)
45                q=q->next;
46            p->next=q->next;
47            q->next=p;
48            p=r;
49        }

50    }

51}

52
53int main(){
54    Linklist* L;
55    L=(Linklist*)malloc(sizeof(Linklist));
56    int a[8]={3,34,5,4,32,39,1,0};
57    creatList(L,a,8);
58    sort_list(L);
59    disList(L);
60}
posted on 2009-09-15 21:26 life02 阅读(578) 评论(0)  编辑 收藏 引用 所属分类: 算法

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理