[][Data][] [][1][]<->[][5][]<->[][3][]<->[][8][null]

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Pointers. Why have pointers? / pointers ทำให้ฟังก์ชันหรือส่วนของ โปรแกรมสามารถใช้งานข้อมูลร่วมกันได้ / ใช้ pointers ในการสร้างโครงสร้างข้อมูลที่ ซับซ้อนได้
Advertisements

Lists Data Structure LAUKHWAN NGAMPRASIT LAUKHWAN NGAMPRASIT.
Computer Programming 1 LAB Test 3
โครงสร้างของโหนด Successor = Node ที่อยู่ถัดไปจาก Node ที่ใช้งานอยู่
บทที่ 6 โครงสร้างข้อมูลลิ้งค์ลิสต์
บทที่ 6 โครงสร้างข้อมูลลิ้งค์ลิสต์
ครั้งที่ 12 การค้นหาข้อมูล (Searching)
BC322 ครั้งที่ 6 Text file BC322 : computer Programming (Week6)
Control Statement for while do-while.
การโปรแกรมควบคุมแบบทำงานซ้ำ
บทที่ 11 การเขียนโปรแกรมโดยใช้ข้อมูลชนิดพอยท์เตอร์
Data Type part.III.
Lecture 4: ทางเลือก, เงื่อนไขของทางเลือก
CS Assembly Language Programming
แถวคอย (Queue).
1. จงหาผลลัพธ์จากโปรแกรมต่อไปนี้
Data structure & Algorithms
Arrays and Pointers.
LAB # 4 Computer Programming 1 1. พิจารณาโปรแกรมต่อไปนี้
LAB # 4.
JavaScript.
การสร้างตาราง(Table)
Linked-List (รายการโยง)
อ.อรวรรณ เชาวลิต For คำสั่งวนซ้ำ อ.อรวรรณ เชาวลิต
Lecture no. 10 Files System
จดหมายเวียน (Mail Merge)
Week4 Data types, Variables, Operators and Input/output (ต่อ)
คิวQueue Circular Queue.
การสร้างจดหมายเวียน.
Looping การวนรอบ บทที่ 4.
ลิ้งค์ลิสต์วงกลม วิธีการที่ทำให้สามารถวิ่งจาก โหนดหนึ่งจะไม่สามารถชี้กลับไป ยังโหนดอื่น ๆ ได้ในลิ้งค์ลิสต์ โดยให้ตัวชี้ของโหนดสุดท้ายซึ่ง เดิมเป็นค่า NULL.
สุพจน์ สวัตติวงศ์ gamepad.pigcanfly.com
Suphot Sawattiwong Lab IV: Array Suphot Sawattiwong
โครงสร้างข้อมูลแบบคิว
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
การสอบถามข้อมูลแบบซ้อนกัน
List ADTs By Pantharee S..
Linked List (ลิงค์ลิสต์)
Microsoft Word Printing
โครงสร้างข้อมูลทรีและไบนารีทรี (Tree and Binary Tree)
บทที่ 5 Link List Link List.
Linked List List is group of nodes that consists of data and link.
21 August ดรุณี ศมาวรรตกุล 1 2. ADT List - Unsorted list ADT - list implementation - Sorted List - Circular list - Doubly linked list.
บทที่ 3 การทำงานกับฟอร์ม (Form)
ลิงค์ลิสต์ (Linked List)
วิชา COSC2202 โครงสร้างข้อมูล (Data Structure)
โครงสร้างข้อมูลแบบกองซ้อน (Stack)
โครงสร้างข้อมูลแบบรายการโยง (Link List)
การสร้างและการใช้งานฟอร์ม
รายการโยง (linked lists) หอยทอด 30 ข้าวผัด 30 ไก่ย่าง 50 เนื้อทอด 30
โครงสร้างข้อมูลแบบลิงก์ลิสต์
stack #1 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
Int isEmpty ( node **ptr_head) ; parameter ชื่อของตัวแปรลิสต์ที่จะตรวจสอบว่า ว่างหรือไม่ return value มีได้ 2 สถานะ คือ ว่าง (1) หรือ ไม่ ว่าง (0) body.
รายการ (Lis t) [3] ผู้สอน อาจารย์ ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยีคอมพิวเตอร์เคลื่อนที่ คณะเทคโนโลยีสารสนเทศและการสื่อสาร Website : ict.up.ac.th/yeunyong.
บทที่ 11 พอยเตอร์ C Programming C-Programming. จันทร์ดารา Surin Campus : มีอะไรบ้างในบทนี้  ตัวแปรพอยเตอร์ (Pointer) เป็นตัว แปรที่แปลกและแตกต่างไปจากตัว.
DATA STRUCTURE AND ALGORITHM Linked List.
Linked List (2) Sanchai Yeewiyom School of Information & Communication Technology University of Phayao.
Linked List ( ต่อ ) Lecturer : Kritawan Siriboon, Room no. 913 Text : Data Structures & Algorithm Analysis in C, C++,… Mark Allen Weiss, Addison Wesley.
Queue Sanchai Yeewiyom School of Information & Communication Technology University of Phayao.
รายการ(List) [2] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
รายการ(List) [1] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
Mark Allen Weiss, Addison Wesley
Linked List.
Mark Allen Weiss, Addison Wesley
Linked List.
int isEmpty ( node **ptr_head) ;
รายการ(List) [3] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
Linked List Lecturer : Kritawan Siriboon, Room no. 913
Linked List (ต่อ) Lecturer : Kritawan Siriboon, Room no. 913
4 โครงสร้างข้อมูลแบบลิงค์ลิสต์ (LINKED LIST).
ใบสำเนางานนำเสนอ:

[][Data][] [][1][]<->[][5][]<->[][3][]<->[][8][null] ลิ้งค์ลิสต์สองทาง [][Data][] [][1][]<->[][5][]<->[][3][]<->[][8][null]

stuct node{ int data; struct node*Prtvious; //ชี้ไปยังโหนดก่อนหน้า Struct node*Next; // ชี้ไปยังโหนดถัดไป }

การแทรกโหนดใหม่ระหว่าง โหนด 2 กับ 3 First->[][1][]<->[][5][]<->[][3][]<->[][8][null] p pชี้โหนด 2 p->Next ชี้โหนด 3 (p->Next)->previous ชี้โหนด 2

1. ค้นหาตำแหน่งที่ต้องการจะแทรกโหนดใหม่ p=First; //ให้ทำในขณะที่ p->Data ไม่เท่ากับ5 while(p->data!5){ //ถ้าเป็นจริง ให้ p ชี้ไปยังโหนดถัดไป p=p->Next; //เมื่อออกจาก while()pชี้โหนด 2 }

2. สร้างโหนดใหม่ให้ new ชี้โหนดใหม่ Nodes new= createNewNode(); ผลลัพธ์ กำหนดให้กับโหนดใหม่ new->Data=4 new new

new 3 3 new 3.เปลี่ยนตำแหน่งชี้ของ Pointer ต่าง ๆ ดังนี้ (p->Next)->previous=new ให้ previous ของโหนด 3 ชี้ไปยังโหนดใหม่หรือ New new->Nexr=p->Next //ให้ Next ของ โหนดใหม่ ชี้ไปยัง โหนดที่ 3 เดิม new 3 3 new

5 new 5 new p->Next = new; new->Previous=p ให้ Previous ของโหนดใหม่ชี้ไปยังโหนดที่2เดิม 5 new 5 new

การแทรกโหนดใหม่มาเป็นโหนดแรก Doubly Linked-List