Expression Tree Binary Tree Search

57
Expression Tree Binary Tree Search

description

Expression Tree Binary Tree Search. ExpressionTree เอ็กซ์ เพรส ชันท รี คือ อะไร. เอ็กซ์ เพรส ชันท รี เป็นการประยุกต์การใช้งาน จากไบนารีท รี มีหลักการทำงาน เหมือนไบนารีท รีแต่ เอ็กซ์ เพรส ชันท รีจะใช้เก็บนิพจน์ทางคณิตศาสตร์ โดย เอ็กซ์ เพรส ชันท รีมีข้อมูลด้วยกัน 2 ชนิด คือ - PowerPoint PPT Presentation

Transcript of Expression Tree Binary Tree Search

Page 1: Expression  Tree Binary Tree Search

Expression Tree

Binary Tree Search

Page 2: Expression  Tree Binary Tree Search

Expression Tree เอ็กซเ์พรสชนัทรี คือ อะไร

เอ็กซเ์พรสชนัทร ีเป็นการประยุกต์การใชง้านจากไบนารทีร ีมีหลักการทำางานเหมอืนไบนารทีรีแต่เอ็กซเ์พรสชนัทรจีะใชเ้ก็บนิพจน์ทางคณิตศาสตร์โดยเอ็กซเ์พรสชนัทรมีขีอ้มูลด้วยกัน 2 ชนิด คือ

Operand Operator

(โอเปอรแ์รนด์ ) (โอเปอรเ์รเตอร)์

Page 3: Expression  Tree Binary Tree Search

Expression Tree ขอ้มูลใน เอ็กซเ์พรสชนัทรี

รูจ้กัขอ้มูลทั้ง 2 ชนิด โอเปอรแ์รนด์ คือ ตัวถกูดำาเนินการ(ตัวแปรหรอืค่าคงที)

เชน่ A B C D หรอื 1 3 5 7โอเปอรเ์รเตอร ์คือ เครื่องหมาย

การคำานวณต่างๆ เชน่เชน่ + - * /

Page 4: Expression  Tree Binary Tree Search

Expression Tree คณุลักษณ์ของ เอ็กซเ์พรสชนัทรี

1 โอเปอรแ์รนด์ จะถกูเก็บไวท่ี้โหนดใบ

2 โอเปอรเ์รเตอร ์จะถกูเก็บไวท่ี้รูทโหนด หรอืโหนดอ่ืนท่ีไมใ่ชโ้หนดใบ

3 ซบัทร ีจะมรูีทโหนดเป็นตัวโอเปอรเ์รเตอร ์

Page 5: Expression  Tree Binary Tree Search

Expression Tree คณุลักษณ์ของ เอ็กซเ์พรสชนัทรี

โอเปอรแ์รนด์ จะถกูเก็บไวท่ี้โหนดใบ

D

+

*

+

C

A

B

โอเปอร์แรนด์

Page 6: Expression  Tree Binary Tree Search

Expression Tree คณุลักษณ์ของ เอ็กซเ์พรสชนัทรี

โอเปอรเ์รเตอร ์จะถกูเก็บไวท่ี้รูทโหนด หรอื โหนดอ่ืนท่ีไมใ่ช้โหนดใบ

D

+

*

+

C

A

B

โอเปอร์เร

เตอร์

Page 7: Expression  Tree Binary Tree Search

Expression Tree คณุลักษณ์ของ เอ็กซเ์พรสชนัทรี

ซบัทร ีจะมรูีทโหนดเป็นตัวโอเปอรเ์รเตอร ์

D

+

*

+

C

A

B

จะมรีูทโหนดเป็น

เครื่องหมาย

Page 8: Expression  Tree Binary Tree Search

Expression Tree การท่องไปใน เอ็กซเ์พรสชนัทรี

จะใชว้ธิเีดียวกันกับการท่องในไบนารทีร ี

แต่จะเรยีกต่างกัน 1. ในเอ็กซเ์พรสชนัทร ีPrefix ในไบนารทีร ี เรยีก

Preorder = NLR2. ในเอ็กซเ์พรสชนัทร ีInfix ในไบนารทีร ี

เรยีก Inorder = LNR3. ในเอ็กซเ์พรสชนัทร ีPostfix ในไบนารทีร ีเรยีก

Postorder = LRN* N คือ รากโหนด หรอื รูทโหนด (Root Node)

Page 9: Expression  Tree Binary Tree Search

Expression Tree การท่องเอ็กซเ์พรสชนัทรี แบบ

Prefix

D

+

*

+

C

A

B

+* A+B C

DPrefix = NLR

Page 10: Expression  Tree Binary Tree Search

Expression Tree การท่องเอ็กซเ์พรสชนัทรี แบบ

PostfixPostfix = LRN

D

+

*

+

C

A

B

AB C +* D +

Page 11: Expression  Tree Binary Tree Search

Expression Tree การท่องเอ็กซเ์พรสชนัทรี แบบ

InfixInfix = LNR

D

+

*

+

C

A

B

((A*(B+C ))+D)

Page 12: Expression  Tree Binary Tree Search

แบบทดสอบ Expression Tree

+

/-

A * ED

B C

Page 13: Expression  Tree Binary Tree Search

13

การประยุกต์ใชง้าน Binary Tree ต้นไมข้องนิพจน์ทางคณิตศาสตร์ (Expression Tree)

• เราสามารถแทนนิพจน์ทางคณิตศาสตรด้์วย โครงสรา้งขอ้มูลแบบต้นไมไ้ด้ เชน่แทน ((A*B) + C) +

((D + (E / F)) - G)

Page 14: Expression  Tree Binary Tree Search

ต้นไมข้องนิพจน์ทางคณิตศาสตร์ (Expression Tree)

• โหนดใบ (Leave) ของ Expression Tree คือOperands (ตัวถกูดำาเนินการ) ได้แก่ค่าคงที่(Constant) หรอืตัวแปร (Variable)

• โหนดอ่ืนๆบรรจุ Operators (ตัวดำาเนินการ)

Page 15: Expression  Tree Binary Tree Search

การคำานวณหาค่าของ Expression Tree

หาค่าของ Infix expression (อาจรวมวงเล็บด้วย) ได้ โดย

• หาค่าของนิพจน์ทางคณิตศาสตร์ (Expression) พรอ้มวงเล็บ ของ subtree หรอื tree ทางด้านซา้ย

ด้วยวธิแีบบ recursive• แสดงค่า Operator ท่ี Root ของ subtree/tree

ออกมา• หาค่าของนิพจน์ทางคณิตศาสตร์ (Expression)

พรอ้มวงเล็บ ของ subtree หรอื tree ทางด้านขวา ด้วยวธิแีบบ recursive

• วธิกีารท่ีกระทำาการบนสมาชกิทางด้านซา้ยของ โหนดก่อนตัวโหนด แล้วตามการกระทำาบนสมาชกิ

ทางด้านขวาของโหนด (Left, Node, Right) น้ีเรยีก วา่ Inorder Traversal

Page 16: Expression  Tree Binary Tree Search

การคำานวณหาค่าของ Expression Tree

Inorder Traversal (Left, Node, Right) ให้ Infix Expression ((A*B)+C)+((D+(E/F))-G)Postorder Traversal (Left, Right, Node) ให้ Postfix Expression AB*C+DEF/+G-+Preorder Traversal (Node, Left, Right) ให้ Prefix Expression ++*ABC-+D/EFG

Page 17: Expression  Tree Binary Tree Search

การคำานวณหาค่าของ Expression Tree

Infix Expression Postfix Expression Prefix Expression

(A + (B/C)) + ((D*E)+((F-G)*H))A B C / + D E * F G – H * + ++ + A / B C + * D E * - F G H

Page 18: Expression  Tree Binary Tree Search

Expression Tree การแปลงนิพจน์ Infix เป็น

Postfixการแปลงนิพจน์ Infix

เป็น Postfix จะใช้ วธิกีารเรยีงลำาดับแบบ สแต็ก

Page 19: Expression  Tree Binary Tree Search

การสรา้งต้นไมข้องนิพจน์ทางคณิตศาสตร์ การเปล่ียน Postfix Expression เป็น Expression

Tree • อ่านนิพจน์ทางคณิตศาสตร์ (Expression) เขา้มาที

ละตัว• ถ้าอักษรที่ได้เป็น Operand (ตัวถกูดำาเนินการ) ให้

สรา้งต้นไมข้นาด 1 โหนด แล้ว push พอยน์เตอร์1 อันลงบนสแตก

• ถ้าอักษรที่ได้เป็น Operator (ตัวดำาเนินการ) ให้pop พอยน์เตอรไ์ปยงัต้นไม้ 2 อันคือ T1 และ T2 ออกมาจากสแตกแล้วสรา้งต้นไมใ้หมข่ึ้นหนึ่งอันให้

มี Root อยูท่ี่ Operator ท่ีรบัเขา้มาและมี Child ด้านซา้ยและด้านขวา เป็น T1 และ T2 ตามลำาดับ

• พอยน์เตอรท์ี่ชีไ้ปยงัต้นไมท้ี่สรา้งขึ้นมาใหมน้ี่ จะ ถกู Push ลงไปบนสแตก

Page 20: Expression  Tree Binary Tree Search

Expression Tree การแปลงนิพจน์ Postfix เป็น

ต้นไม้จะมหีลักด้วยกัน 2 อยา่งคือ

1. เจอโอเปอรแ์รนด์ ให้ทำาการ Push

2. เจอโอเปอรเ์รเตอร ์ให้ pop ขอ้มูลออก2ตำาแหน่ง

Page 21: Expression  Tree Binary Tree Search

Input a b + c d e + * *

a b + c d e + * * • Input 2 ตัวแรกเป็น

Operand จงึสรา้งต้นไม้ ขนาด 1 โหนดแล้ว push

พอยน์เตอร์ 1 อันลงบนสแตก

a b + c d e + * * อ่าน + เขา้มา จงึ pop พอยน์

เตอรอ์อกมาจากสแตก สรา้งต้นไมใ้หม ่Push พอยน์เตอร์ท่ีชีไ้ปยงัต้นไมท่ี้สรา้งขึน้มาใหมล่งไปบนสแตก

Page 22: Expression  Tree Binary Tree Search

a b + c d e + * * อ่าน + เขา้มา จงึ pop พอยน์

เตอรอ์อกมาจากสแตก สรา้งต้นไมใ้หม ่Push พอยน์เตอร์ท่ีชีไ้ปยงัต้นไมท่ี้สรา้งขึน้มาใหมล่งไปบนสแตก

a b + c d e + * * อ่าน c, d, e เขา้มา สรา้ง

ต้นไมข้นาด 1 โหนด สำาหรบัอักษรแต่ละตัว แล้ว Push พอยน์เตอรท่ี์ชีไ้ปยงัต้นไม ้แต่ละอันนี้ลงบนสแตก

Page 23: Expression  Tree Binary Tree Search

a b + c d e + * * อ่าน * เขา้มา ทำาการ Pop

พอยน์เตอรอ์อกมาจากสแตก แล้วสรา้งต้นไมใ้หม่โดยม ี* ท่ีอ่านเขา้มาเป็น Root

a b + c d e + * * อ่าน * เขา้มา จงึทำาการ Pop

พอยน์เตอรอ์อกมาจากสแตก แล้วสรา้งต้นไมใ้หมโ่ดยม ี* ท่ีอ่านเขา้มาเป็น Root

Page 24: Expression  Tree Binary Tree Search

+ C D E + * *

BA

AB

Page 25: Expression  Tree Binary Tree Search

C D E + * *

BA+

+

Page 26: Expression  Tree Binary Tree Search

C D E + * *

BA

+ C D E

Page 27: Expression  Tree Binary Tree Search

* *

BA

+ C D E+

+

Page 28: Expression  Tree Binary Tree Search

*

BA

+ C

ED

+*

*

Page 29: Expression  Tree Binary Tree Search

*

BA

+

C

ED

+

**

Page 30: Expression  Tree Binary Tree Search

• 1. จงสรา้ง Expression Tree จากนิพจน์ต่อไปน้ี– 1.1 ((A – 2) * (B + C)) – ((D * E) * F)– 1.2 A + (B – C) * D ^ ( E * F )

• 2. จงแปลง Postfix เป็น ต้นไม้– 2.1) 6 2 * 3 /– 2.2) A 2 ^ 2 A * B * - B 2 ^ + A B - /

แบบฝึกหัด

Page 31: Expression  Tree Binary Tree Search

Binary search tree

• ไบนารเีซริช์ทรี (Binary Search Tree)เป็น ไบนารทีรท่ีีมคีณุสมบติัท่ีวา่ทกุ ๆ โหนดใน

ทรี ค่าของโหนดรากมค่ีามากกวา่ค่าของ ทกุโหนดในทรยีอ่ยทางซา้ย และมค่ีาน้อย

กวา่หรอืเท่ากับค่าของทกุโหนดในทรยีอ่ย ทางขวาและในแต่ละทรยีอ่ยก็มี

คณุสมบติัเชน่เดียวกัน

Page 32: Expression  Tree Binary Tree Search

• ไบนารเีสริช์ทรปีระกอบด้วยคณุสมบติั ดังต่อน้ี

• 1. ทกุๆ โหนดในซบัทรด้ีานซา้ยต้องมี ค่าน้อยกวา่รูทโหนด

• 2. ทกุๆ โหนดในซบัทรขีา้งขวาต้องมค่ีา มากกวา่หรอืเท่ากับรูทโหนด

• 3. แต่ละซบัทรจีะต้องเป็นไบนารเีสริช์ ทรี

Binary search tree

Page 33: Expression  Tree Binary Tree Search

• ในการสรา้ง และแทรกโหนดใหมเ่ขา้ในBinary Search Tree เป็นกระบวนการ

ทำางานท่ีไมส่ลับซบัซอ้นมากนัก เพราะจะ เริม่ต้นจากตำาแหน่งของ Root Node

หลังจากนัน้เมื่อมโีหนดใหม่ๆ เพิม่เขา้มา ก็จะทำาการเปรยีบเทียบวา่ค่าของโหนด

ใหม่ มค่ีามากวา่ หรอื น้อยกวา่โหนดปัจจุบนั

Binary search tree

Page 34: Expression  Tree Binary Tree Search

• ถ้าค่าของโหนดใหมน้่อยกวา่ค่าของ โหนดปัจจุบนั ก็จะทำาการค้นหาขอ้มูล

ต่อไป ทางซา้ยตามลำาดับ จนกวา่จะ เจอท่ีวา่งๆ จงึทำาการแทรกค่าโหนด

ใหมล่ง ณ ตรงจุดนัน้ และในทาง กลับกัน ถ้าค่าของโหนดใหมท่ี่ค่า

มากกวา่ค่าของโหนดปัจจุบนั ก็จะทำาการค้นหาขอ้มูลต่อไปทางขวาจนกวา่จะเจอท่ีวา่งท่ีจะทำาการแทรก

โหนดใหมล่งไป ณ ตรงจุดนัน้

Binary search tree

Page 35: Expression  Tree Binary Tree Search

• ตัวอยา่ง จงสรา้งและแทรกขอ้มูลลงใน Tree โดยอาศัยขอ้มูลดังต่อไปนี้

40, 20, 10, 50, 65, 45, 30• เริม่แรกด้วยการสรา้งโหนดแรก ใน

Tree ซึ่งขอ้มูลแรกสดุ คือ 40 และจะ เป็นขอ้มูลที่เป็น Root Node

Binary search tree

40 40null null

Page 36: Expression  Tree Binary Tree Search

• สว่นโหนดถัดมา คือ 20 เมื่อเปรยีบ เทียบค่าขอ้มูลกับ Root node แล้วมค่ีา

น้อยกวา่ 40 ก็จะทำาการแทรกลงมาทาง ด้านซา้ยของโหนด 40

Binary search tree

40 40

20 20null null

40 40 null

Page 37: Expression  Tree Binary Tree Search

• โหนดต่อไป คือ 10 เปรยีบเทียบ แล้วมค่ีาน้อยกวา่40 จงึต้องนำาไปเปรยีบเทียบกับโหนดถัดไปทางด้าน

ซา้ยในท่ีน้ี คือ 20 และ 10 น้ีมค่ีาน้อยกวา่ 20 ดัง นัน้จงึทำาการแทรกลงทางด้านซา้ยของโหนด 20

Binary search tree

40

20

4040 null

10 10null null

20 null

Page 38: Expression  Tree Binary Tree Search

• โหนดต่อไป คือ 50 เปรยีบเทียบ แล้วมค่ีามากกวา่ 40 จงึทำาการแทรกลงทางด้านขวาของ Tree 40 เนื่องจาก

ทางด้านขวาของ 40 ยงัไมม่ขีอ้มูล

Binary search tree

20

4040

10 10null null

20 null 50 nullnull50

Page 39: Expression  Tree Binary Tree Search

• ถัดไปคือ 65 เปรยีบเทียบแล้วมค่ีา มากกวา่ 40 จงึ ต้องนำาไปเปรยีบเทียบกับ โหนดถัดไปทางด้านขวาใน

ท่ีนี้ คือ 50 และ 65 นี้ทีค่ามากกวา่ 50 ฉะนัน้จงึ ทำาการแทรกลงทางด้านขวาของ Tree 50 เน่ืองจาก

ทางด้านขวาของ 50 ยงัไมม่ขีอ้มูล

Binary search tree

20

40

40

10

10null null

20 null 50null

50

65null null

65

Page 40: Expression  Tree Binary Tree Search

• ถัดไปคือ 45 เปรยีบเทียบ แล้วมค่ีามากกวา่ 40 จงึต้องนำาไปเปรยีบเทียบกับโหนดถัดไปทางด้านขวาในท่ี

นี้ คือ 50 และ 45 น้ีมค่ีาน้อยกวา่ 50 ฉะนัน้จงึ ทำาการแทรกลงทางด้านซา้ยของ Tree 50 เน่ืองจาก

ทางด้านซา้ยของ 50 ยงัไมม่ขีอ้มูล

Binary search tree

20

40

40

10

10null null

20 null 50

50

65null null

6545

45null null

Page 41: Expression  Tree Binary Tree Search

• ท้ายสดุคือ 30 เปรยีบเทียบแล้วมค่ีาน้อยกวา่ 40 จงึต้องนำาไปเปรยีบเทียบกับโหนดถัดไป ทางด้าน

ซา้ยในท่ีนี้คือ 20 และ 30 นี้มค่ีามากกวา่ 20 ฉะนัน้ จงึทำาการแทรกลงทางด้านขวาของ Tree 20

เน่ืองจากทางด้านขวาของ 20 ยงัไมม่ขีอ้มูล

Binary search tree

20

40

40

10

10null null

20 50

50

65null null

6545

45null null

30null null

30

Page 42: Expression  Tree Binary Tree Search

การค้นหาขอ้มูลในไบนารเีสริช์ทรี(BST Search)

• การค้นหาโหนดท่ีมค่ีาต่าสดุ (Find the Smallest Node)

• 1. โหนดท่ีมค่ีาต่าสดุคือ 10 อยูใ่น ตำาแหน่งโหนดใบด้านซา้ยของทรี

• 2. การค้นหาโหนดท่ีเก็บค่าต่าสดุใน ทรี ด้วยการเดินตามบรานซท์างซา้ย

มอืไปจนกระทั่งถึงโหนดใบ• 3. ก็จะค้นพบโหนดท่ีมค่ีาตำ่าสดุใน

ไบนารเีสริช์ทรี

Page 43: Expression  Tree Binary Tree Search

• การค้นหาโหนดท่ีมค่ีาสงูสดุ (Find the Largest Node)

• 1. การค้นหาจะเริม่ต้นจากรูทโหนด และเดินตามไปยงับรานชฝ์ั่ งขวา

• 2. จนกระทั่งพบโหนดท่ีมค่ีาสงูสดุ ก็คือ 65

การค้นหาขอ้มูลในไบนารเีสริช์ทรี(BST Search)

Page 44: Expression  Tree Binary Tree Search

การดำาเนินงานในไบนารเีสริช์ทรี(BST Operation) การแทรกโหนด

(Insertion) • การแทรกโหนดใน BST จะดำาเนิน

การแทรกท่ีตำาแหน่งโหนดใบ หรอื โหนดท่ีคล้ายใบ

• กระทำาการแทรกท่ีโหนดใบในตำาแหน่งท่ียงัคงไวซ้ึง่คณุสมบติั

ของ BST

20

40

10

50

654530

Page 45: Expression  Tree Binary Tree Search

• เพิม่ โหนด 25

20

40

10

50

654530

20

40

10

50

654530

25

การดำาเนินงานในไบนารเีสริช์ทรี(BST Operation)

Page 46: Expression  Tree Binary Tree Search

• เพิม่ โหนด 40

20

40

10

50

654530

20

40

10

50

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40

Page 47: Expression  Tree Binary Tree Search

การดำาเนินงานในไบนารเีสริช์ทรี(BST Operation) การลบโหนด

(Delete) • การลบโหนดออกจากไบนารเีสริช์ทรี มี

ความเป็นไปได้ 4 ประการ• 1. กรณีโหนดท่ีต้องการลบไมม่ลีกู ให้ดา

เนินการลบได้ทันที• 2. กรณีโหนดท่ีต้องการลบมเีฉพาะซบัทรี

ด้านขวา ให้ทำาการลบโหนดดังกล่าวท้ิง และดึงซบัทรด้ีานขวาขึน้มาแทน

Page 48: Expression  Tree Binary Tree Search

• 3. กรณีโหนดท่ีต้องการลบมเีฉพาะซบัทรี ด้านซา้ย ให้ทาการลบโหนดดังกล่าวทิ้ง และ

ดึงซบัทรด้ีานซา้ยขึน้มาแทน• 4. กรณีโหนดท่ีต้องการลบมสีองโหนดซบั

ทรี (ท้ังด้านซา้ยและขวา) มี 2 แนวทาง– ให้ดำาเนินการหาโหนดท่ีมค่ีามากท่ีสดุในซบัทรี

ด้านซา้ยของโหนดท่ีต้องการลบ และเคลื่อน ยา้ยมาแทนท่ีตาแหน่งโหนดท่ีถกูลบ

– ให้ดำาเนินการหาโหนดท่ีมค่ีาน้อยท่ีสดุในซบัทรี ด้านขวาของโหนดท่ีต้องการลบ และเคลื่อนยา้ย มาแทนท่ีตาแหน่งท่ีโหนดถกูลบ

การดำาเนินงานในไบนารเีสริช์ทรี(BST Operation) การลบโหนด

(Delete)

Page 49: Expression  Tree Binary Tree Search

• ลบ โหนด 50

20

40

10

50

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40 48

Node to be delete

20

40

10

50

654530

25 40 48

Find largest nodeFind delete node

Page 50: Expression  Tree Binary Tree Search

• ลบ โหนด 50

20

40

10

48

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40 48

Node to be delete

20

40

10

50

654530

25 40 48

Largest NodeOn left subtree

Move Largest Node

Move Largest Node here

Page 51: Expression  Tree Binary Tree Search

• ลบ โหนด 50

20

40

10

48

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40

Delete complete

Page 52: Expression  Tree Binary Tree Search

• ลบ โหนด 45

20

40

10

50

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40 48

Node to be delete20

40

10

50

654530

25 40

Find smallest nodeFind delete node

4946

Node to be delete

48

4946

Page 53: Expression  Tree Binary Tree Search

• ลบ โหนด 45

20

40

10

50

654530

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40 48

Node to be delete20

40

10

50

654530

25 40

move smallest nodeSmallest node on right subtree

4946

48

4946

Move smallest Node here

Page 54: Expression  Tree Binary Tree Search

• ลบ โหนด 45

20

40

10

50

654630

25

การดาเนินงานในไบนารเีสริช์ทรี(BST Operation)

40 48

49Delete complete

Page 55: Expression  Tree Binary Tree Search

แบบฝึกหัด• 1. จงแสดงภาพแต่ละขัน้ตอนของ

การสรา้ง Binary Search Tree จาก ขอ้มูลต่อไปน้ี

• 5 8 2 3 9 1 7 10 6

Page 56: Expression  Tree Binary Tree Search

แบบฝึกหัด

• 2. จากรูปไบนารทีรเีสริช์ท่ีกำาหนดให้ ต่อไปน้ี จงวาดรูปแสดงการดำาเนิน

การกับไบนารทีรเีสริช์ตามลำาดับต่อไปน้ี

30

60

10

70

806520

5 75 85

Page 57: Expression  Tree Binary Tree Search

แบบฝึกหัด• 2.1 ป้อน 15 • 2.2 ป้อน 95• 2.3 ลบ 30• 2.4 ลบ 85