資料結構 單鏈表

2021-10-06 10:36:35 字數 1446 閱讀 4442

目標:掌握單鏈表的資料結構

單鏈表常用於儲存樹和圖

我們這裡用用陣列模擬單鏈表 用陣列效率高,而且讓我們更加的理解單鏈表的資料結構

理解了我畫的圖,你就知道了單鏈表需要儲存兩個資訊

單鏈表的操作

ok,基礎的操作就這三個、其餘的操作也基本可以通過這三個得到

題目

acwing826 單鏈表

實現乙個單鏈表,鍊錶初始為空,支援三種操作:

(1) 向煉表頭插入乙個數;

(2) 刪除第k個插入的數後面的數;

(3) 在第k個插入的數後插入乙個數

現在要對該鍊錶進行m次操作,進行完所有操作後,從頭到尾輸出整個鍊錶。

注意:題目中第k個插入的數並不是指當前鍊錶的第k個數。例如操作過程中一共插入了n個數,則按照插入的時間順序,這n個數依次為:第1個插入的數,第2個插入的數,…第n個插入的數。

這個題目還有一點小坑,比如時間是第k個插入的點的下標是?

第乙個點 idx=0

第k個點 idx=k-1 下標是k-1

//*****單鏈表的定義*****

private

static

int head;

private

static

int[

] e =

newint

[n];

private

static

int[

] ne =

newint

[n];

private

static

int idx;

//*****單鏈表的操作*****

//1. 初始化單鏈表

private

static

void

init()

//2. 向單鏈表的頭部插入乙個數

private

static

void

addtohead

(int val)

//3. 向單鏈表的下標位k個後加乙個數val

private

static

void

add(

int k,

int val)

//4. 刪除下標位k後面的那個節點

private

static

void

remove

(int k)

資料結構單鏈表

初學資料結構,貼段自己編寫的單鏈表程式,希望自己能夠一直以強大的學習熱情持續下去!自勉!2012年3月30日 於大連 include using namespace std typedef struct node linklist,node linklist makelist int n void ...

資料結構 單鏈表

今天浪費了好多時間,也許是心裡想著明天的考試吧 可自己也知道這次的考試,自己畢竟過不了了,只好等到今年11月份,想想那時自己已經大三了 還有那麼多時間嗎!很懊惱今天不知怎麼回事,感嘆環境真的可以影響乙個人,真的可以 把今天的學習筆記寫下來,沒有進行好好的整理,這回單鏈表的功能較多,操作比較散,最後乙...

資料結構 單鏈表

實現乙個單鏈表 1 查詢 查詢第index個節點 查詢指定的元素 2 插入 將指定的元素插入到第index個節點上 3 刪除 將第index個節點刪除 規律 刪除和新增元素前務必儲存兩個元素的位址引用資訊 public class mylinkedlist 記錄鍊錶結構的頭結點位址引用 privat...