棧,鍊錶,佇列 簡單實現 一

2021-10-10 23:53:18 字數 3110 閱讀 4769

**思路:

package com.kuang;

/** * @author xiaokuangshen

* @date 2020/11/29

*/public

class

arraystackdemo

// 判斷棧是否為滿

public

boolean

isfull()

// 判斷棧是否為空

public

boolean

isempty()

// 入棧

public

void

push

(int value)

top++

; stack[top]

= value;

}// 出棧

public

intpop()

int value = stack[top]

; top--

;return value;

}// 遍歷

public

void

show()

//注意 i >= 0 因為陣列下標從0開始 從棧頂開始遍歷

//先進後出

for(

int i = top; i >=

0; i--)}

}public

static

void

main

(string[

] args)

}

package com.kuang;

/** * @author xiaokuangshen

* @date 2020/11/29 15:31

*/public

class

tlinkedlist

// 將結點作為內部類。也可以新建乙個node類,作為結點

class

node

public t gett()

public

void

sett

(t t)

}// 在鍊錶頭部新增乙個結點

public

void

addfirst

(t t)

// 在鍊錶中間新增乙個結點

public

void

addmid

(t t,

int index)

node.next=mid.next;

mid.next=node;

size++;}

// 在鍊錶尾部新增乙個結點

public

void

addlast

(t t)

last.next=node;

node.next=null;

size++;}

// 刪除鍊錶的頭結點

public

void

removefirst()

// 刪除鍊錶的中間元素

public

void

removemid

(int index)

int j=0;

node qmid=head;

while

(jqmid.next=mid.next;

size--;}

// 刪除鍊錶的尾結點

public

void

removelast()

qmid.next= null;

size--;}

// 獲取鍊錶指定下標的結點

public node get

(int index)

int j=0;

while

(jreturn mid;

}public

static

void

main

(string[

] args)

// linkedlist.removelast();

// linkedlist.removefirst();

// linkedlist.addlast("hello4");

linkedlist.

addmid

("hello",2

);system.out.

println

("--------------");

for(

int i =

0; i < linkedlist.size; i++)}

}

**思路:

package com.kuang;

/** * @author xiaokuangshen

* @date 2020/11/29 19:49

*/public

class

arrayqueuedemo

// 判斷陣列佇列是否滿了

public boolean isfull()

// 判斷陣列佇列是否為空

public boolean isempty()

// 新增資料

public

void

add(

int value)

rear++

; queue[rear]

= value;

}// 出佇列

public

intput()

front++

;return queue[front];}

// 遍歷佇列

public

void

show()

for(

int i = front +

1; i <= rear; i++)}

}public

static

void

main

(string[

] args)

}

Java實現棧 佇列 鍊錶

棧 底層陣列 棧頂指標 public class mystack 自定義構造器,自定義初始化棧大小 public mystack int initsize 插入 public void push int num 刪除 public intpop 檢視 public intpeek 佇列 底層陣列 佇...

棧 佇列 鍊錶

includestruct queue int main while q.head includeint main maxvalue temp maxvalue temp maxvalue temp 0 for int j 1 j len j maxvalue temp maxvalue temp ...

鍊錶棧與佇列的實現

link queue from squeue import queueerror class node def init self,val,next none self.val val self.next next class lqueue def init self self.rear node ...