输入n,再输入n个(0-100)之间的正整数 (1) 按输入次序建立单链表,并输出链表的值; (2) 对链表按值从小到大排序,并输出链表的值 (3) 删除值相同的结点,输出链表的值; (4) 将链表倒序,并输出。
时间: 2023-09-11 11:05:09 浏览: 217
### 回答1:
答:(1)根据输入次序建立单链表,输出链表的值:按照输入的数字建立单链表,输出链表的值;(2)对链表按值从小到大排序,输出链表的值:对链表进行排序,按照从小到大的顺序输出;(3)删除值相同的结点,输出链表的值:删除链表中值相同的结点,输出剩余结点的值;(4)将链表倒序,输出:将链表中结点的顺序反转,输出倒序后的链表结点值。
### 回答2:
输入n,再输入n个(0-100)之间的正整数:
(1)按输入次序建立单链表,并输出链表的值;
输入n和n个正整数。首先创建一个头节点head,并让一个指针p指向head。然后,根据输入的正整数创建节点,并将节点链接到链表中。循环n次完成链表的创建。最后,遍历链表输出节点的值。
(2)对链表按值从小到大排序,并输出链表的值
创建一个新的指针new_head指向head,然后遍历链表中的节点,按节点的值的大小依次排序。如果节点i的值大于节点i+1的值,则交换节点i和节点i+1的位置,直到链表中的所有节点都排好序。最后,遍历链表输出节点的值。
(3)删除值相同的结点,输出链表的值
遍历链表中的节点,如果节点i的值与节点i+1的值相同,则删除节点i+1,并将节点i的next指针指向节点i+2。直到遍历完整个链表,所有相同值的节点都被删除。最后,遍历链表输出节点的值。
(4)将链表倒序,并输出
创建一个指向链表头节点的指针p,并将链表的连接关系依次反转。首先,将指针p指向当前节点,然后将当前节点的next指向上一个节点,再将上一个节点指针指向当前节点,最后将当前节点指针指向下一个节点。重复这个过程直到遍历完整个链表,完成链表的倒序。最后,遍历链表输出节点的值。
### 回答3:
(1)按输入次序建立单链表,并输出链表的值:
首先创建一个空链表,然后按照输入的次序将n个(0-100)之间的正整数逐个插入链表的尾部。最后遍历整个链表,输出链表的值。
(2)对链表按值从小到大排序,并输出链表的值:
可以采用插入排序算法对链表进行排序。从链表的第二个元素开始,依次将后面的元素插入到已排序的部分中的正确位置。最后遍历整个链表,输出排序后的链表的值。
(3)删除值相同的节点,输出链表的值:
遍历链表,利用一个集合(如哈希表)来记录已经出现的节点值。当遍历到一个节点时,如果该节点的值已经在集合中存在,则删除该节点,否则将该节点的值添加到集合中。最后遍历整个链表,输出删除重复值后的链表的值。
(4)将链表倒序,并输出:
可以采用三个指针的方法来实现链表的倒序。首先将当前节点的后继节点保存到一个临时变量中,然后将当前节点的后继指针指向前一个节点,再将当前节点设为前一个节点,最后将临时变量设为当前节点。重复以上步骤直到链表的最后一个节点。最后遍历整个链表,输出倒序后的链表的值。
阅读全文