關於線性表中的順序表和煉表的一些基本操作
1、順序表在o(n)刪除乙個指定元素
2、順序表反轉和迴圈左移
3、鍊錶的頭插法和尾插法建立鍊錶
4、鍊錶的刪除和插入
5、鍊錶的遞迴和非遞迴反轉
#include
using
namespace std;
int data=
;typedef
struct lnodelnode,
*linklist;
intreverse
(int arr,
int left,
int right)
}void
display
(int arr,
int n)
cout<}/*迴圈左移num個資料*/
void
left_num
(int arr,
int num,
int n)
void
delete
(int arr,
int x,
int n)}}
/*都是具有頭結點的鍊錶*/
/*頭插法建立鍊錶*/
linklist headcreate
(int arr,
int n)
return head;
}/*尾插法建立鍊錶*/
linklist rearcreate
(int arr,
int n)
r->next;
return head;
}void
linklistdispaly
(linklist head)
cout<}void
delete
(linklist head,
int x)
p=p-
>next;}}
void
insert
(linklist head,
int index,
int x)
p=p-
>next;
i++;}
}/*鍊錶的遞迴翻轉 這是針對不帶頭結點的鍊錶所以傳入我們這裡是帶頭結點所以是head->next*/
linklist reverse_rect
(linklist head)
lnode *newhead=
reverse_rect
(head-
>next)
; head-
>next-
>next=head;
head-
>next=
null
;return newhead;
}/*鍊錶非遞迴反轉*/
linklist reverselist
(linklist head)
return res;
}int
main()
return0;
}
資料結構 線性表操作
1 有兩張非遞增有序的線性表a,b,採用順序儲存結構,兩張表合併用 c表存,要求 c為非遞減有序的,然後刪除c表中值相同的多餘元素。includeusing namespace std define maxsize 100 define overflow 1 define error 0 defin...
資料結構基本之線性表
2.2順序表插入 順序表儲存結構 define maxsize 100 typedef structlist define ok 1 define error 0 在順序表l中第i個資料元素之前插入乙個元素e。i的合法取值範圍1 i last 2 int inslist list l,int i,t...
資料結構 線性表的相關操作
這是第一次在論壇上碼文章,可能會有許多錯誤,希望那個大家多多包涵。大二剛開始接觸學習資料結構,回顧了一下之前線性結構中線性表的基本操作 1 抽象型別的定義 typedef struct seqlist 2 線性表的初始化 int initseqlist seqlist l 3 判斷線性表的是否為空表...