本文主要是介绍从键盘输入5个整数,将这些整数插入到一个链表中,并按从小到大次序排列,最后输出这些整数。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
设节点定义如下struct Node {int Element; // 节点中的元素为整数类型struct Node * Next; // 指向下一个节点
};
从键盘输入5个整数,将这些整数插入到一个链表中,并按从小到大次序排列,最后输出这些整数。
注释那段求指出错误,求解!5555555555555555…
#include <iostream>
#include <algorithm>
using namespace std;
struct Node {int Element; // 节点中的元素为整数类型struct Node* Next; // 指向下一个节点
};
typedef struct Node LNode;
typedef struct Node* LinkList;
int main() {LNode* L;L = (Node*)malloc(sizeof(Node));L->Next = NULL;int num;for (int i = 0; i < 5; ++i) {LNode* s= (Node*)malloc(sizeof(Node));cin >> num;s->Element = num;s->Next = L->Next;//头插法L->Next = s;}int arr[5];int i = 0;while (L->Next != NULL) {arr[i++] = L->Next->Element;L = L->Next;}sort(arr, arr + 5);for (int i = 0; i < 5; ++i) {if (i == 4)cout << arr[i] << endl;elsecout << arr[i] << ' ';}/*while (L->Next != NULL) {LNode* p = L->Next;LNode* minp = L->Next;LNode* pre = L;while (p != NULL) {if (minp->Element > p->Next->Element) {pre = minp;minp = p->Next;}p = p->Next;}//找到了最小元素指针cout << minp->Element << ' ';//将最小元素在链表中删除pre->Next = minp->Next;free(minp);L = L->Next;}cout << endl;*/
}
运行结果
这篇关于从键盘输入5个整数,将这些整数插入到一个链表中,并按从小到大次序排列,最后输出这些整数。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!