問題描述 :
使用帶頭結點的單鏈表程式設計:
有兩個有序序列,分別表示兩個集合。
求它們的交集並輸出。
注意:這裡要利用到「有序」的特性。
輸入說明 :
第一行輸入序列a的資訊:
第乙個整數n(0<=n<=100),表示共有n個元素,其後有n個整數,表示n個元素的資料
第一行輸入序列b的資訊:
第乙個整數n(0<=n<=100),表示共有n個元素,其後有n個整數,表示n個元素的資料
注:兩個序列輸入時保證有序
輸出說明 :
輸出交集的元素序列,輸出格式見範例。
如果交集為空,則輸出「head–>tail」
輸入範例 :
4 1 3 5 7
4 1 4 5 8
輸出範例 :
head–>1–>5–>tail
注意對比有序和無序//la用兩個指標pre, curr, 來方便刪除
// lb用q指標進行遍歷
// 每次遍歷條件(q->next!=null && q->num<=curr->num)則進行
// flag來標誌是否找到
#include
using
namespace std;
struct listnode
;listnode *
createbyarray
(int arr,
int n)
r->next=
null
;return head;
}void
displaylink
(listnode *head)
cout<<
"tail\n";}
void
fun(listnode *la, listnode *lb)
q=q-
>next;}if
(flag==0)
else}}
intmain()
cin>>n2;
int arr2[n2]
;for
(int i=
0;i)
listnode *a,
*b; a=
createbyarray
(arr1,n1)
; b=
createbyarray
(arr2,n2)
;fun
(a,b)
;displaylink
(a);
return0;
}
求有序序列的交集(鍊錶)
問題描述 使用帶頭結點的單鏈表程式設計 有兩個有序序列,分別表示兩個集合。求它們的交集並輸出。注意 這裡要利用到 有序 的特性。輸入說明 第一行輸入序列a的資訊 第乙個整數n 0 n 100 表示共有n個元素,其後有n個整數,表示n個元素的資料 第一行輸入序列b的資訊 第乙個整數n 0 n 100 ...
鍊錶 12 求有序序列的交集(鍊錶)
使用帶頭結點的單鏈表程式設計 有兩個有序序列,分別表示兩個集合。求它們的交集並輸出。注意 這裡要利用到 有序 的特性。第一行輸入序列a的資訊 第乙個整數n 0 n 100 表示共有n個元素,其後有n個整數,表示n個元素的資料 第一行輸入序列b的資訊 第乙個整數n 0 n 100 表示共有n個元素,其...
7 求有序序列的交集(鍊錶) c
問題描述 使用帶頭結點的單鏈表程式設計 有兩個有序序列,分別表示兩個集合。求它們的交集並輸出。注意 這裡要利用到 有序 的特性。輸入說明 第一行輸入序列a的資訊 第乙個整數n 0 n 100 表示共有n個元素,其後有n個整數,表示n個元素的資料 第一行輸入序列b的資訊 第乙個整數n 0 n 100 ...