Presentation laddar. Vänta.

Presentation laddar. Vänta.

Några datastrukturer Länkade listor Binära träd. Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 22 PersonNod.

Liknande presentationer


En presentation över ämnet: "Några datastrukturer Länkade listor Binära träd. Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 22 PersonNod."— Presentationens avskrift:

1 Några datastrukturer Länkade listor Binära träd

2 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 22 PersonNod Person-post nästa PersonNod Person-post nästa PersonNod Person-post nästa PersonNod Person-post nästa Länkad lista

3 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 33 Print Global variabel: PersonNod första denna = första Skriv ut namn denna = null Stopp true false denna = denna.nästa Länkad lista: Print

4 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 44 Print Iteration * denna = första (denna <> null) Global variabel: PersonNod första Skriv ut namn denna = denna.nästa Länkad lista: Print (JSP)

5 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 55 Add Global variabel: PersonNod första Skapa PersonNod nod för p förra.nästa = nod första är tom Stopp true false första = nod p.namn < första.p.namn nod.nästa = första första = nod true false förra = första denna = första.nästa denna är tom true false Indata: Person p förra = denna denna = förra.nästa nod.nästa = denna förra.nästa = nod Stopp p.namn < denna.p.namn true false

6 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 66 Add Iteration * Selektion (denna <> null) Global variabel: PersonNod första Selektion Indata: Person p Skapa PersonNod nod för p första = nod o - o (första är tom) första = nod nod.nästa = första - o (p.namn < första.p.namn) förra = första denna = första.nästa nod.nästa = denna förra.nästa = nod AVBRYT - o förra = denna denna = förra.nästa förra.nästa = nod (p.namn < denna.p.namn)

7 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 77 Remove Global variabel: PersonNod första förra = null första = denna.nästa denna = null Stopp true false första = nod mål = denna.p.namn true false förra.nästa = denna.nästa denna = denna.nästa förra = null true false Indata: string mål = namnet på den person vi söker denna = första Stopp förra = denna

8 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 88 Remove Iteration * (denna <> null) Global variabel: PersonNod första Selektion denna = denna.nästa Förra = null - o (förra = null) AVBRYT Indata: string mål = namnet på den person vi söker denna = första (nästa.p.namn = mål) Selektion förra = denna första = denna.nästa o förra.nästa = denna.nästa o

9 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 99 PersonNod Person-post PersonNod Person-post nästa PersonNod Person-post nästa PersonNod Person-post nästa

10 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 10 PersonNod Person-post left Binära träd right PersonNod Person-post left right PersonNod Person-post left right PersonNod Person-post left right PersonNod Person-post left right

11 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 11 Add p.namn > nod.p.namn Stopp true false nod.right = null true false Indata: Person p, Node nod p.namn < nod.p.namn false Add (p, nod.right) Add (p, nod.left) nod.left = null nod.right = NyNod(p) nod.left = NyNod(p) true false true

12 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 12 Indata: Person p, Node nod Add (p, nod.right) Add (p, nod.left) nod.right = NyNod(p) nod.left = NyNod(p) Add Selektion (p.namn > nod.p.namn)(p.namn < nod.p.namn) (nod.right = null) (nod.left = null) HögerVänster o

13 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 13 Find p.namn > nod.p.namn Returnera R true false nod.right = null true false Indata: string namn, Node nod p.namn < nod.p.namn false nod.left = null true false true R = null R = Find (namn, nod.right) R = Find (namn, nod.left) p.namn = nod.p.namn true false R = nod.p

14 Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 14 Indata: string namn, Node nod R = Find (namn, nod.right) R = Find (namn, nod.left) Find Selektion (p.namn > nod.p.namn) (p.namn < nod.p.namn) (nod.right <> null) (nod.left <> null) Höger Vänster o R = null (p.namn = nod.p.namn) Denna o R = nod.p returnera R


Ladda ner ppt "Några datastrukturer Länkade listor Binära träd. Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 22 PersonNod."

Liknande presentationer


Google-annonser