求解!数据结构 头插尾插 菜单的问题

说一下怎么改就好啦!不用整个改掉求参考!谢谢谢谢!对程序的修改建议(1)尾插法<-->头插法,或者按大小插入(2)设立菜单,可以多次选择某种操作(3)有头结点<->无头结... 说一下怎么改就好啦!不用整个改掉求参考!谢谢谢谢!
对程序的修改建议
(1)尾插法<-->头插法,或者按大小插入
(2)设立菜单,可以多次选择某种操作
(3)有头结点<->无头结点
在原基础修改 这个是尾插法要改为头插法 增设菜单 头结点变为无
展开
 我来答
xoaxa
2015-03-24 · TA获得超过8607个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3402万
展开全部
/****************************************************/
/* 功  能:将数据 newnode 插入增序表                */
/* 参  数:head 链表的头结点,ewnode 待插入的新结点 */
/* 返回值: void                                     */ 
/****************************************************/   
void InsertNodeOrder(struct student *head, struct student *newnode) {
    struct student *q;
    q = head;
    while(q->next) {
        if(newnode->num <= q->next->num) { // 插在表中,或头结点后 
            p->next = q->next;
            q->next = p;
            return;
        }
        q = q->next;
    }
    q->next = newnode;// 插在表尾 
    newnode->next = NULL;
}

/***********************************************/
/* 功  能: 将结点newnode插入到头结点后(头插法) */
/* 参  数: head——原链表,newnode——新结点   */
/* 返回值: void                                */ 
/***********************************************/ 
void InsertNodeHead(struct student *head,struct student *newnode) {
newnode->next = head->next;
head->next = newnode;
}

/***********************************************/
/* 功  能: 将结点newnode连接到表尾(尾插法)     */
/* 参  数: head——原链表,newnode——新结点   */
/* 返回值: void                                */ 
/***********************************************/ 
void InsertNodeTail(struct student *head,struct student *newnode) {
struct student *p = head;
while(p->next) p = p->next;
p->next = newnode;
newnode->next = NULL;
}
更多追问追答
追问
在这个的基础上如何修改啊!   
能给我个邮箱 我把源码发给你看看
追答
876929541@qq.com
已经以邮件回复。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式