การใช้งานโซ่:
เพิ่มและลบองค์ประกอบในส่วนของสแต็กรักษาโหนดไว้ที่ด้านบนของสแต็กในสแต็กและขนาดของตัวบ่งชี้ตัวแปรนับ:
LinearNode ส่วนตัว;
จำนวน int ส่วนตัว;
ด้านบน ---> องค์ประกอบ 1 ----> องค์ประกอบ 2 ---> องค์ประกอบ 3 .........
การใช้งาน (พร้อมการทดสอบหลัก):
LinkedStack
Package Stack; ด้านบนของสแต็ก; 10; i ++) stack.push (i); (); คือ: " + stack.top.getElement ()); system.out.println (" องค์ประกอบด้านบนของสแต็คคือ: " + stack.peek ()); ขนาด int สาธารณะ () {นับกลับ;} บูลีนสาธารณะ isempty isempty () {return (size () == 0);} โมฆะสาธารณะ push (องค์ประกอบวัตถุ) {linearNode node = new lin earned (องค์ประกอบ); pop () {ถ้า (isempty ()) {system.out.println ("สแต็กว่างเปล่า!"); Count-;
เรียกใช้ผลลัพธ์:
สแต็ก 0 ถึง 10 สแต็คยังคงสแต็คต่อเนื่อง 5 ครั้งติดต่อกันหรือไม่? : เท็จ
ขนาดของสแต็คคือ: 5
องค์ประกอบด้านบนของสแต็กคือ: 4
องค์ประกอบด้านบนของสแต็กคือ: 4
การใช้งานอาร์เรย์:
ด้านล่างของสแต็กเป็นตำแหน่งของ 0 ในอาร์เรย์เสมอ
เนื้อหาส่วนตัว [] เนื้อหา จุดตัด จุดตัด
การใช้งาน (พร้อมการทดสอบหลัก):
Arraystack
Package Stack; จุดตัด จุดตัด ขนาด int คงที่ = 10; ดัชนี int = 0; 0);} โมฆะสาธารณะพุช (องค์ประกอบวัตถุ) {// ถ้า (isempty ()) // expand (); } วัตถุสาธารณะป๊อป () {ถ้า (isempty ()) {system.out.println ("สแต็กว่างเปล่า!"); สแต็กท็อป-; ถ้า (isempty ()) ผลลัพธ์ = null; กด 0 ถึง 24 จากนั้นออกจากสแต็กเป็นเวลา 10 ครั้งติดต่อกัน "); สำหรับ (int i = 0; i <25; i ++) stack.push (i); สำหรับ (int i = 0; i <10; i ++) stack.pop (); : " + stack.isempty ()); system.out.println (" องค์ประกอบด้านบนของสแต็กคือ: " + stack.peek ());}
เรียกใช้ผลลัพธ์:
กด 0 ถึง 24 แล้วขนาดของสแต็ค 10 ครั้งติดต่อกัน: 15
สแต็คว่างเปล่า? : เท็จ
องค์ประกอบด้านบนของสแต็กคือ: 14
ใช้ชุด LinkedList เพื่อจำลองสแต็ก
วิธี
Generics ของ Java อนุญาตให้ LinkedList จำลองสแต็คจัดเก็บข้อมูลประเภทข้อมูลต่าง ๆ รวมถึง int, double, string, ฯลฯ แนะนำอินเทอร์เฟซ API หลายตัวที่ใช้:
ใส่สแต็ก
เป็นโมฆะ addfirst (e e);
รับองค์ประกอบด้านบนของสแต็ก
e getfirst ();
ออกจากสแต็ค
e removefirst ();
เสี่ยงภัย
บูลีน isempty ();
ตัวอย่างเช่นรหัส
นำเข้า java.util.linkedlist; นำเข้า java.util.nosuchelementedException; ข้อมูล int) {this.stack.addfirst (data);} public int pop () พ่น nosuchelementedexception {return this.stack.removefirst ();} สาธารณะใน t gettop () โยน nosuchelementedexception } โมฆะคงที่หลัก (String args []) {SimulingStack S = ใหม่ Simulatestack (); .out.println (ข้อมูล);