陣列模擬單連結串列
struct node{
int data;
struct node *next;
};
陣列模擬單連結串列,定義b[15]陣列元素是結構體中的data元素,right[15]是next一個元素指向,在當前元素之前,插入新元素。
void createData(){
int a[13] = {0};//防止初始化重複元素過濾
int b[15] = {0};
int right[15] = {0};
memset(right,-1,sizeof(right));
srand((unsigned int)time(NULL));
int n = 10;
for (int i = 0; i < n; ++i) {
int temp = rand()%12+1;
if (a[temp]) {
--i;
continue;
}
a[temp] = 1;
b[i] = temp;
right[i] = i+1;
printf("%d ",b[i]);
}
right[n-1] = -1;//這個是n-1這個元素為-1標記
printf("\n");
b[n] = 3;//這個是插入的元素,可以改成自己輸入的元素
//開始插入元素
for (int i = 0;i != -1;) {
if (b[right[i]] > b[n]) {
right[n] = right[i];//將當前的序號後移到n
right[i] = n;//在位置插入n
break;
}
i = right[i];
}
for (int i = 0;(i != -1)&&(b[i] > 0);i = right[i]) {
printf("%d ",b[i]);
}
printf("\n");
}
相關文章
- 陣列模擬單連結串列你會了嗎?陣列
- 陣列模擬雙連結串列,你get到了嗎?陣列
- 資料結構--陣列、單向連結串列、雙向連結串列資料結構陣列
- 陣列與連結串列陣列
- 陣列和連結串列陣列
- 可變陣列——連結串列前言陣列
- 資料結構--單連結串列(通過陣列實現)資料結構陣列
- 面相物件(三):模擬連結串列物件
- 佇列_單向連結串列佇列
- 線性結構 陣列與連結串列陣列
- day1-陣列和連結串列陣列
- 聊聊陣列與連結串列,棧與佇列陣列佇列
- L2-022 重排連結串列【陣列】陣列
- 連結串列 - 單向連結串列
- 資料結構-棧(通過陣列和單向連結串列實現)資料結構陣列
- 線性表(陣列、連結串列、佇列、棧)詳細總結陣列佇列
- 連結串列-單連結串列實現
- L2-002 連結串列去重【陣列】陣列
- 面試-陣列和連結串列的區別面試陣列
- 單連結串列
- 資料結構-單連結串列、雙連結串列資料結構
- day4 連結串列-模擬與快慢指標指標
- pta重排連結串列(一個很清晰的實現,完全模擬連結串列的實現)
- 為什麼陣列查詢比連結串列要快?而插入刪除比連結串列效率低陣列
- 資料結構與演算法整理總結---陣列,連結串列資料結構演算法陣列
- C/C++ 陣列連結串列表示式計算C++陣列
- Android技能樹 — 陣列,連結串列,雜湊表基礎小結Android陣列
- 判斷單連結串列是否關於中心對陣
- 單雙連結串列
- 單連結串列建立連結串列出現問題
- PAT-B 1025 反轉連結串列【模擬+對映】
- 資料結構與演算法——連結串列 Linked List(單連結串列、雙向連結串列、單向環形連結串列-Josephu 問題)資料結構演算法
- 歸併排序:陣列和連結串列的多種實現排序陣列
- .NET 下 模擬陣列越界陣列
- 連結串列&鏈棧&佇列佇列
- 單連結串列成環
- 棧_單向連結串列
- 單連結串列的建立