鍊錶操作<-請戳這裡(這個博主寫的東西挺好,謝謝他)
修改其中的一些地方。
1. 可以刪除節點。
2. 插入的時候按下標插入比較方便。
3. typedef 使用需要注意。
#include
#include
using namespace std;
struct node;
typedef struct node *ptrnode;
typedef ptrnode list;
typedef ptrnode position;
list makeempty(list l);
int isempty(list l);
int islast(position p, list l);
position find(int x, list l);
void delete(int x, list l);
position findprevious(int x, list l);
void insert(int x, list l, position p);
void deletelist(list l);
void print(list l);
struct node
;void print(list l)
cout<}int isempty(list l)
int islast(position p, list l)
position find(int x, list l)
return p;
}position findprevious(int x, list l)
p = p->next;
}return p;
}void delete(int x, list l)
else
}void insert(int x, list l, int p)
while(p--)//計算插入的位置
tmp->element = x;
tmp->next = l->next;
l->next = tmp;
}void deletelist(list l)
p = tmp;
tmp = p->next;
}l->next =
null;
}int main(int argc, const char * argv)
{ list l = (list)malloc(sizeof(struct node));
l->next=null;
insert(1, l, 0);
insert(3, l, 1);
insert(5, l, 2);
print(l);
position p = find(3, l);
cout
大話資料結構 鍊錶插入刪除操作
刪除l的第i個資料元素,並用e返回其值,l的長度減1.迴圈結束後,p指向第i 1個結點,p next指向第i個結點。如果第i個結點不存在,則p next none,無法刪除第i個結點。status listdelete linklist l,int i,elemtype e if p next no...
資料結構 鍊錶的插入刪除
遍歷列印鍊錶 public static void printlinkedlist listnode head system.out.println 1 頭插 public static listnode pushfront listnode head,int val public static l...
資料結構 鍊錶的建立 刪除
1 介紹 鍊錶是一種物理儲存單元上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。鍊錶由一系列結點 鍊錶中每乙個元素稱為結點 組成,結點可以在執行時動態生成。2 優點 使用鍊錶結構可以克服陣列鍊錶需要預先知道資料大小的缺點,鍊錶結構可以充分利用計算機記憶體空間,實現靈活...