| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 339 人关注过本帖
标题:怎样对单链表排序
只看楼主 加入收藏
includewmp
Rank: 1
等 级:新手上路
帖 子:4
专家分:5
注 册:2013-3-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
怎样对单链表排序
跪求:怎样对单链表排序。(求例题)。拜托各位大虾!
2013-03-23 13:11
zhangqi_gsts
Rank: 6Rank: 6
来 自:甘肃天水
等 级:侠之大者
威 望:1
帖 子:227
专家分:457
注 册:2011-3-27
收藏
得分:20 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct tag_student
{
    char name[8];
    struct tag_student *next;
}student;
void list_sort(student *head)
{
    student *p = head;
    while(NULL != p->next)
    {
        student *q = p->next;
        while(q)
        {
            if(strcmp(p->name, q->name) > 0)
            {
                char tmp[8];
                strcpy(tmp, p->name);
                strcpy(p->name, q->name);
                strcpy(q->name, tmp);
            }
            q = q ->next;
        }
        p = p->next;
    }
}
int main()
{
    student headNode; //头结点
    student *p= &headNode; // 头指针,头指针指向头结点,头节点的next指向的是第一个节点
    for(int i = 0; i != 5; ++i)
    {
        p->next = (student *)malloc(sizeof(student));
        p = p->next;
        p->next = NULL;
        scanf("%s", p->name);
    }
    list_sort(headNode.next);
    p= headNode.next;
    while(p)
    {
        printf("%s ", p->name);
        p =p->next;
    }
}
2013-03-23 16:35
快速回复:怎样对单链表排序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022275 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved