#include using namespace std;
// 鍊錶結構體
struct node
;// 建立鍊錶、返回煉表頭指標
node* createnodes()
head = head->next;
next->next = null;
return head;
}// 列印鍊錶,未使用遞迴
/*void printnodes(node* node)
coutprintnodes(node->next);
}// 鍊錶長度
int nodeslength(node* node)
return currentlengt;
}// 排序
void sortnode(node* node)
// 資料排序
for(int j = 0; j < len; ++j)
}} // 重新設定每個節點的資料
for(int nodenum = 0; nodenum < len; ++nodenum)
}// 新增節點
/*node* insertnode(node* head, int data)
if(temphead == null) // 在最後面插入元素
else
else // 插在中間
}return head;}*/
// 新增節點
void insertnode(node** head, int data)
// 找到要新增節點的位置
while(temphead != null && temphead->data <= data)
if(temphead == null) // 插入的元素最大,直接插在最後面
else
else // 插入在中間
}}// 鍊錶刪除,刪除資料為data的結點
/*node* deletenode(node* head, int data)
if(delenode->next != null) // 後面還有元素
else // 刪除的是中間元素
}else
else // 將要刪除的是鍊錶最後乙個元素
}delete delenode;
delenode = null; return head;}*/
// 鍊錶刪除,刪除資料為data的結點
void deletenode(node** head, int data)
if(delnode->next != null) // 後面還有元素
else // 中間元素
}else
else // 鍊錶最後元素
}delete delnode;
delnode = null;
}// 翻轉
/*node* reverse(node* head)
head->next = null; // currentnode1在堆記憶體位置沒有改變
head = currentnode1;
return head;
}*/// 翻轉
void reverse(node** head)
(*head)->next = null;
*head = currentnode1;
}int main()
簡單鍊錶操作
先是最簡單的,建立,刪除節點,有序鍊錶新增節點,反轉等,如下 include using namespace std struct node node createlink int a,int len else return head void show node head coutelse bre...
鍊錶簡單操作
color green 鍊錶 是一種常見的基礎資料結構,是一種線性表,但是並不會按線性的順序儲存資料,而是在每乙個節點裡存到下乙個節點的資訊 相當與c 的指標 鍊錶的主要操作 增,刪,查,改,其它。1.增加乙個鍊錶元素 加入鍊錶元素,加到尾部 public void add object obj e...
C 簡單鍊錶操作
include include include 定義乙個數字節點 typedef struct tagstnode stnode 建立inum個節點,返回指向第乙個節點的指標 stnode create int inum 列印 void print stnode psthead 將鍊錶反轉 stno...