Leetcode的easy题之21Merge Two Sorted Lists要求合并两个已经排好序的链式线性表。其实就是简单的链表操作。
但是由于自己各种操作不熟悉,这道题捯饬了一天。首先就是这个控制台输入两组数,分别建立两个线性表这里卡了很久。另一个点就是把链表接起来,这里操作也不是很熟悉。以下就分这两个点来总结记录一下。
控制台输入建立链式线性表
要求:两组数以回车符'\n'
作为分隔标记,组内的数以空格作为分隔。
线性表的结构:
struct ListNode{
int val;
ListNode *next;
ListNode(){};//这个相当于默认的构造函数
ListNode(int x) :val(x), next(NULL){};
};
方法一:用cin.get()函数
ListNode *L1;
int temp;
cin >> temp;
ListNode first(temp);
L1 = &first;
ListNode *p1 = &first;
while (cin >> temp)
{
ListNode *medal = new ListNode;
//ListNode *medal = (ListNode*)malloc(sizeof(ListNode));
medal->val = temp;
medal-&