Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม
การเขียนโปรแกรม
  1. Preorder Tree Traversal ในโครงสร้างข้อมูล

    Pre-order Traversal (Recursive) ลำดับ: Root → Left → Right ลำดับ: 10, 5, 8, 16, 15, 20, 23 อัลกอริทึม preorderTraverse(root): if root not empty: print root value preorderTraversal(left of root) preorderTraversal(right of root) โค้ด C++ และ Output // ใช้โครงสร้าง node, tree เดียวกั

  2. Binary Search Trees (BST) ในโครงสร้างข้อมูล

    คุณสมบัติของ BST ทุก BST เป็น Binary Tree Left Child มีค่า น้อยกว่า Root Right Child มีค่า มากกว่า Root BST ที่สมบูรณ์ไม่มีค่าซ้ำ ตัวอย่างต้นไม้ Inorder Traversal: 5, 8, 10, 15, 16, 20, 23 โค้ด C++ ตัวอย่าง #include <iostream> using namespace std; class node { public: int h_left, h_

  3. กราฟและอัลกอริทึมการเดินทาง (Graph Traversal Algorithms)

    กราฟ (Graph) โครงสร้างข้อมูลแบบ Non-linear ประกอบด้วย Nodes และ Edges ที่เชื่อมต่อ ขอบอาจเป็น Directed หรือ Undirected แทนได้เป็น G(V, E) เช่น G({A,B,C,D,E}, {(A,B), (B,D), (D,E), (B,C), (C,A)}) Breadth First Search (BFS) อัลกอริทึมเยี่ยมชมทุกโหนด เลือกโหนดหนึ่ง แล้วเยี่ยมเพื่อนบ้านทีละตัว จบเพื่

  4. การประยุกต์ใช้ DFS และ BFS ในโครงสร้างข้อมูล

    การประยุกต์ใช้ DFS (Depth First Search) ทำ DFS บน Unweighted Graph → สร้าง Minimum Spanning Tree และ All-Pairs Shortest Path Tree ตรวจจับ Cycle (Cycle Detection) – ถ้าเจอ Back-edge ระหว่าง DFS → มี Cycle หา Path ระหว่างสองโหนด u และ v Topological Sorting – จัดตารางงานจาก Dependency ใช้ DFS หา Stro

  5. Minimum Spanning Tree (MST) ในโครงสร้างข้อมูล

    Spanning Tree Spanning Tree คือเซตย่อยของ Undirected Graph ที่มี ทุกโหนด (Vertices) เชื่อมต่อ โดยจำนวนขอบ (Edges) น้อยที่สุด ถ้าทุกโหนดในกราฟเชื่อมต่อกัน → มี Spanning Tree อย่างน้อย 1 ต้น ในกราฟหนึ่ง อาจมี Spanning Tree มากกว่า 1 ต้น Minimum Spanning Tree (MST) MST คือเซตย่อยของขอบใน Connected

  6. Bernoulli Distribution ในโครงสร้างข้อมูล

    นิยาม Bernoulli Distribution เป็น Discrete Distribution มี 2 ผลลัพธ์: x=0 (Failure), x=1 (Success) โอกาส Success = p, Failure = q = 1-p สูตร $$P(x) = \begin{cases} 1-p & \text{for } x = 0 \\ p & \text{for } x = 1 \end{cases}$$ หรือเขียนได้อีกแบบ: $$P(x) = p^{x} (1-p)^{1-x}$$ ตัวอย่าง C++ #include

  7. Binomial Distribution ในโครงสร้างข้อมูล

    นิยาม Binomial Distribution เป็น Discrete Probability Distribution Pₚ(n | N) ของการได้ n Success จาก N Bernoulli Trials (มี 2 ผลลัพธ์: x=0 Failure, x=1 Success โอกาส Success = p, Failure = q = 1-p) สูตร $$P_{p}(n|N) = \binom{N}{n} p^{n} (1-p)^{N-n}$$ ตัวอย่าง C++ #include <iostream> #includ

  8. Geometric Distribution ในโครงสร้างข้อมูล

    นิยาม Geometric Distribution เป็น Discrete Probability Distribution สำหรับ n = 0, 1, 2, ... มี Probability Density Function: $$P(n) = p(1-p)^{n}$$ Distribution Function: $$D(n) = \sum_{i=0}^{n} P(i) = 1 - q^{n+1}$$ ตัวอย่าง C++ #include <iostream> #include <random> using namespace s

  9. Negative Binomial Distribution ในโครงสร้างข้อมูล

    นิยาม Negative Binomial Distribution เป็นการแจกแจงสุ่มที่สร้างจำนวนเต็มตาม Negative Binomial Discrete Distribution รู้จักในชื่อ Pascals Distribution สูตร $$P(i|k,p) = \binom{k+i-1}{i} p^{k} (1-p)^{i}$$ ตัวอย่าง C++ #include <iostream> #include <random> using namespace std; int main()

  10. Optimal Binary Search Trees (OBST) ในโครงสร้างข้อมูล

    ปัญหา มีชุดจำนวนเต็มเรียงลำดับ และอาร์เรย์ freq (Frequency) ต้องสร้าง Binary Search Tree ที่ให้ ต้นทุนค้นหาต่ำสุด (Minimum Search Cost) วิธีแก้: Dynamic Programming สร้างอาร์เรย์ช่วย cost[n][n] เก็บคำตอบ Subproblems แบบ Bottom-up ตัวอย่าง Keys = {10, 12, 20} Frequency = {34, 8, 50} Output: Minim

  11. ตัวอย่าง Convex Hull ในโครงสร้างข้อมูล (Jarvis March Algorithm)

    Convex Hull คืออะไร? มีชุดจุด (Points) ต้องสร้างรูปหลายเหลี่ยม (Polygon) โดยใช้จุดน้อยที่สุด ที่จะ ครอบคลุมจุดทั้งหมด ส่วนนี้ใช้ Jarvis March Algorithm หา Convex Hull Jarvis March Algorithm ใช้หาจุดมุม (Corner Points) ของ Convex Hull จากชุดข้อมูล เริ่มจาก จุดซ้ายสุด (Leftmost Point) เก็บจุดใน Con

  12. Stack ADT ในโครงสร้างข้อมูล

    Abstract Data Type (ADT) ADT เป็นชนิดข้อมูลพิเศษ ที่พฤติกรรมถูกกำหนดโดยชุดค่าและชุดการดำเนินการ Abstract เพราะเราใช้งานและดำเนินการได้ แต่วิธีการทำงานภายในถูกซ่อนไว้ ADT สร้างจาก Primitive Data Types แต่อัลกอริทึมภายในถูกปิดบัง การดำเนินการของ Stack ADT isFull() – ตรวจสอบ Stack เต็มหรือไม่ isEmpt

  13. การเปรียบเทียบ Searching Methods ในโครงสร้างข้อมูล

    ในกรณีต่างๆ ใช้แผนการค้นหาต่างกัน เพื่อหาคีย์ ในส่วนนี้จะดูความแตกต่างระหว่าง Sequential Search และ Binary Search Sequential Search Binary Search Time Complexity: O(n) Time Complexity: O(log n) หาคีย์ที่ตำแหน่งแรกได้ในเวลาคงที่ หาคีย์ที่ตำแหน่งกลางได้ในเวลาคงที่ ลำดับองค์ประกอบใน Contai

  14. การเปรียบเทียบ Sorting Methods ในโครงสร้างข้อมูล

    มีเทคนิคการจัดเรียง 200+ แบบ จะดูบางตัว บางแบบเป็น Comparison-based บางแบบ Non-comparison-based Comparison-based Sorting Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quicksort, Heap Sort – เปรียบเทียบค่าแล้ววางตำแหน่ง Time Complexity Analysis Type Bubble Sort Selection Sort Inserti

  15. Adjacency Lists ในโครงสร้างข้อมูล

    กราฟ (Graph) กราฟเป็น โครงสร้างข้อมูลแบบไม่เชิงเส้น (Non-linear) แสดงข้อมูลด้วย โหนด (Nodes) และความสัมพันธ์ด้วย ขอบ (Edges) กราฟ G มี 2 ส่วน: Vertices (V) และ Edges (E) เขียนเป็น G(V, E) ตัวอย่าง: 5 โหนด 5 ขอบ ขอบเป็น Directed เช่น ขอบ B→D หมายถึงจาก B ไป D ได้ แต่ D ไป B ไม่ได้ วิธีแทนกราฟในหน

  16. การเปรียบเทียบ Search Trees ในโครงสร้างข้อมูล

    จะเปรียบเทียบ Search Trees ต่างๆ ตามการดำเนินการ มีหลายแบบ ต่างกันในลักษณะ ต้นไม้ค้นหาพื้นฐานคือ Binary Search Tree (BST) อื่นๆ ได้แก่ AVL Tree, B-Tree, Red-Black Tree, Splay Tree ตารางเปรียบเทียบ Average Case Search Tree Average Case Insert Delete Search Binary Search Tree O(log n) O(lo

  17. อัลกอริทึมสำหรับ Distributed Shared Memory (DSM)

    Shared Memory และ DSM Shared Memory คือบล็อกหน่วยความจำที่เข้าถึงได้จากหลายโปรแกรม ใช้สื่อสารและลดการจัดการหน่วยความจำซ้ำ Distributed Shared Memory (DSM) เป็นการนำแนวคิด Shared Memory ไปใช้ใน ระบบกระจาย (Distributed Systems) ระบบ DSM นำโมเดล Shared Memory ไปใช้ในระบบ Loosely Coupled ที่ไม่มี Share

  18. ความแตกต่างระหว่าง BFS และ DFS

    BFS (Breadth First Search) และ DFS (Depth First Search) เป็นอัลกอริทึมการเดินทางกราฟ (Graph Traversal Algorithms) BFS อัลกอริทึม Breadth First Search เดินทางกราฟแบบ กว้าง (Breadthward) ใช้ Queue (คิว) จดจำโหนดถัดไปเมื่อถึง Dead End DFS อัลกอริทึม Depth First Search เดินทางกราฟแบบ ลึก (Depthward)

  19. ความแตกต่างระหว่าง Fixed Channel Allocation (FCA) และ Dynamic Channel Allocation (DCA)

    Fixed Channel Allocation (FCA) FCA เป็นกลยุทธ์จัดสรรช่องทางคงที่ (Fixed Channels/Voice Channels) ให้กับเซลล์ (Cells) เมื่อจัดสรรแล้วจะไม่เปลี่ยนแปลง ใช้เพื่อเพิ่มประสิทธิภาพการใช้ความถี่ หากผู้ใช้โทรและเซลล์ไม่ว่าง โทรจะถูกบล็อก สามารถแก้ได้ด้วยการยืมช่องทางจากเซลล์อื่น Dynamic Channel Allocation

  20. ความแตกต่างระหว่าง JPEG และ PNG

    JPEG และ PNG ทั้งคู่เป็นรูปแบบไฟล์ภาพ (Image Format) สำหรับจัดเก็บภาพ JPEG ใช้ Lossy Compression (บีบอัดแบบสูญเสียข้อมูล) ภาพอาจสูญเสียข้อมูลบางส่วน ในขณะที่ PNG ใช้ Lossless Compression (บีบอัดแบบไม่สูญเสียข้อมูล) ไม่มีการสูญเสียข้อมูลภาพในรูปแบบ PNG ตารางเปรียบเทียบ ลำดับ หัวข้อ JPEG PNG

Total 1490 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:4/75  20-คอมพิวเตอร์/Page Goto:1 2 3 4 5 6 7 8 9 10