Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

รายการทั่วไปในโครงสร้างข้อมูล


ในส่วนนี้ เราจะเห็นรายการทั่วไป รายการทั่วไปสามารถกำหนดได้ดังนี้ -

รายการทั่วไป L คือลำดับจำกัดขององค์ประกอบ n (n ≥ 0) องค์ประกอบ ei เป็นอะตอม (องค์ประกอบเดียว) หรือรายการทั่วไปอื่น ธาตุ ei ที่ไม่ใช่อะตอมก็จะเป็นรายการย่อยของ L สมมุติว่า L คือ ((A, B, C), ((D, E), F), G) ที่นี่ L มีรายการย่อยสามองค์ประกอบ (A, B, C), รายการย่อย ((D, E), F) และอะตอม G. รายการย่อยอีกครั้ง ((D, E), F) มีสององค์ประกอบหนึ่ง รายการย่อย (D, E) และอะตอม F.

ใน C++ เราสามารถกำหนดโครงสร้างรายการทั่วไปได้ดังนี้ -

class GeneralizedListNode{
   private:
      GeneralizedListNode *next;
      bool tag;
      union{
         char data;
         GeneralizedListNode *down;
      };
};

ดังนั้นหากแท็กเป็นจริง องค์ประกอบที่แสดงโดยโหนดจะเป็นรายการย่อย ลงชี้ไปที่โหนดแรกในรายการย่อย หากแท็กเป็นเท็จ แสดงว่าองค์ประกอบนั้นเป็นอะตอม ตัวชี้ถัดไปจะชี้ไปที่องค์ประกอบถัดไปในรายการ รายชื่อก็จะประมาณนี้

รายการทั่วไปในโครงสร้างข้อมูล