Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. โปรแกรม C++ สำหรับการนำต้นไม้ B (B Tree) มาใช้งาน

    ต้นไม้ B (B-tree) เป็นการทั่วไปของต้นไม้ค้นหาทวิภาค (binary search tree) בכךที่โหนดสามารถมีลูกมากกว่าสองได้ มันเป็นโครงสร้างข้อมูลต้นไม้ที่ปรับสมดุลเอง (self-balancing) ซึ่งรักษาข้อมูลที่จัดเรียงแล้วและอนุญาตการเข้าถึงแบบลำดับ การค้นหา การแทรก และการลบในเวลา logarithm นี่คือโปรแกรม C++ สำหรับการนำต

  2. โปรแกรม C++ หาค่ามัธยฐานขององค์ประกอบที่เก็บอยู่ในอาร์เรย์สองอาร์เรย์ที่ต่างกัน

    เราจะพิจารณาโปรแกรม C++ เพื่อหาค่ามัธยฐานขององค์ประกอบที่เก็บอยู่ในอาร์เรย์สองอาร์เรย์ที่ต่างกัน อัลกอริทึม Begin ฟังก์ชัน Median() มีอาร์กิวเมนต์เป็นอาร์เรย์สองอาร์เรย์ a1[], a2[] และ n = จำนวนองค์ประกอบของอาร์เรย์: เริ่มต้น i และ j ด้วย 0 และ n1 และ n2 ด้วย -1 สำหรับ c ในช่วง 0 ถึง n ทำ

  3. โปรแกรม C++ สำหรับการนำต้นไม้ B+ (B+ Tree) มาใช้งาน

    ต้นไม้ B+ (B+ tree) เป็นการทั่วไปของต้นไม้ค้นหาทวิภาค (binary search tree) בכךที่โหนดสามารถมีลูกมากกว่าสองได้ มันเป็นโครงสร้างข้อมูลต้นไม้ที่ปรับสมดุลเอง (self-balancing) ซึ่งรักษาข้อมูลที่จัดเรียงแล้วและอนุญาตการเข้าถึงแบบลำดับ การค้นหา การแทรก และการลบในเวลา logarithm มันสามารถมองได้ว่าเป็น B-tre

  4. โปรแกรม C++ สำหรับการนำต้นไม้คาร์ทีเซียน (Cartesian Tree) มาใช้งาน

    นี่คือโปรแกรม C++ สำหรับการนำต้นไม้คาร์ทีเซียน (Cartesian Tree) มาใช้งาน อัลกอริทึม Begin คลาส CarTree ประกาศฟังก์ชัน: min() = เพื่อหาดัชนีขององค์ประกอบที่น้อยที่สุดในอาร์เรย์: if (arr[i] < min) min = arr[i] minind = i inorder() = สำหรับการเดินทาง inorder ของต้น

  5. โปรแกรม C++ สำหรับการนำการเดินทางแบบ Double Order ของต้นไม้ทวิภาคมาใช้งาน

    นี่คือโปรแกรม C++ สำหรับการนำการเดินทางแบบ Double Order (Double Order Traversal) ของต้นไม้ทวิภาคมาใช้งาน ในการเดินทางแบบ Double Order รูทของต้นไม้ย่อยจะถูกเดินทางสองครั้ง อัลกอริทึม Begin คลาส BST มีฟังก์ชันต่อไปนี้: insert() = เพื่อแทรกไอเทมในต้นไม้: ป้อนรูท ป้อนค่าของโหนด ถ้ามาก

  6. โปรแกรม C++ หาองค์ประกอบที่เล็กที่สุดลำดับที่ k โดยวิธีการแบ่งพาร์ติชันอาร์เรย์

    เราจะพัฒนาโปรแกรม C++ เพื่อหาองค์ประกอบที่เล็กที่สุดลำดับที่ k (kth smallest element) โดยวิธีการแบ่งพาร์ติชันอาร์เรย์ (Partitioning the Array) อัลกอริทึม Begin ฟังก์ชัน CreatePartition() มีอาร์กิวเมนต์เป็นอาร์เรย์ a, และขอบเขตล่าง l และขอบเขตบน h in := l และ pi := h สำหรับ i ในช่วง l ถึง

  7. โปรแกรม C++ หาค่ามัธยฐานของอาร์เรย์ที่จัดเรียงแล้วสองอาร์เรย์ โดยใช้วิธีการค้นหาแบบทวิภาค

    เราจะพัฒนาโปรแกรม C++ เพื่อหาค่ามัธยฐาน (median) ของอาร์เรย์ที่จัดเรียงแล้วสองอาร์เรย์ โดยใช้วิธีการค้นหาแบบทวิภาค (Binary Search approach) อัลกอริทึม Begin ฟังก์ชัน median() กับอาร์เรย์ทั้งสองและดัชนีเริ่มต้นและสิ้นสุดของแต่ละอาร์เรย์ ซึ่งมีสองอาร์เรย์และองค์ประกอบของพวกเขาเป็นอาร์กิวเมนต์ A

  8. โปรแกรม C++ หาผลรวมสับอาร์เรย์สูงสุด O(n^2) เวลา (วิธี naive)

    เราจะพัฒนาโปรแกรม C++ เพื่อหาผลรวมสับอาร์เรย์สูงสุด (maximum subarray sum) ในเวลา O(n^2) โดยใช้วิธี naive อัลกอริทึม Begin รับองค์ประกอบอาร์เรย์เป็นอินพุท ทำลูปสำหรับความยาวของสับอาร์เรย์จาก 1 ถึง n ภายในลูปนี้ ทำลูปซ้อนอีกทีหนึ่งกับลูปก่อนหน้า คำนวณผลรวมของสับอาร์เรย์แรกของความยาวนั้น

  9. โปรแกรม C++ สำหรับการนำรายการเชื่อมต่อคู่แบบวงกลม (Circular Doubly Linked List) มาใช้งาน

    ในโครงสร้างข้อมูล รายการเชื่อมต่อ (Link List) เป็นการรวบรวมข้อมูลแบบเส้นตรง แต่ละองค์ประกอบหรือโหนดของรายการประกอบด้วยสองรายการ - ข้อมูลและการอ้างอิงไปยังโหนดถัดไป โหนดสุดท้ายมีการอ้างอิงไปยัง null ในรายการเชื่อมต่อ จุดเข้าถึงเรียกว่า head ของรายการ ในรายการเชื่อมต่อคู่แบบวงกลม (Circular Doubly Lin

  10. โปรแกรม C++ สำหรับการนำรายการเชื่อมต่อคู่แบบวงกลมที่จัดเรียงแล้ว (Sorted Circularly Doubly Linked List) มาใช้งาน

    ในโครงสร้างข้อมูล รายการเชื่อมต่อ (Linked List) เป็นการรวบรวมข้อมูลแบบเส้นตรง แต่ละองค์ประกอบหรือโหนดของรายการประกอบด้วยสองรายการ - ข้อมูลและการอ้างอิงไปยังโหนดถัดไป โหนดสุดท้ายมีการอ้างอิงไปยัง null เข้าสู่รายการเชื่อมต่อ จุดเข้าถึงเรียกว่า head ของรายการ ในรายการเชื่อมต่อคู่แบบวงกลม (Circular Dou

  11. โปรแกรม C++ สำหรับการนำรายการเชื่อมต่อเดี่ยวแบบวงกลมที่จัดเรียงแล้ว (Sorted Circularly Singly Linked List) มาใช้งาน

    ในโครงสร้างข้อมูล รายการเชื่อมต่อ (Linked List) เป็นการรวบรวมข้อมูลแบบเส้นตรง แต่ละองค์ประกอบหรือโหนดของรายการประกอบด้วยสองรายการ - ข้อมูลและการอ้างอิงไปยังโหนดถัดไป โหนดสุดท้ายมีการอ้างอิงไปยัง null เข้าสู่รายการเชื่อมต่อ จุดเข้าถึงเรียกว่า head ของรายการ แต่ละโหนดในรายการเก็บเนื้อหาและพอยน์เตอร์ห

  12. โปรแกรม C++ สำหรับการนำรายการเชื่อมต่อคู่ที่จัดเรียงแล้ว (Sorted Doubly Linked List) มาใช้งาน

    ในโครงสร้างข้อมูล รายการเชื่อมต่อ (Link List) เป็นการรวบรวมข้อมูลแบบเส้นตรง แต่ละองค์ประกอบหรือโหนดของรายการประกอบด้วยสองรายการ - ข้อมูลและการอ้างอิงไปยังโหนดถัดไป โหนดสุดท้ายมีการอ้างอิงไปยัง null เข้าสู่รายการเชื่อมต่อ จุดเข้าถึงเรียกว่า head ของรายการ รายการเชื่อมต่อคู่ (Doubly linked list) ประก

  13. โปรแกรม C++ สำหรับการนำรายการเชื่อมต่อเดี่ยวที่จัดเรียงแล้ว (Sorted Singly Linked List) มาใช้งาน

    ในโครงสร้างข้อมูล รายการเชื่อมต่อ (Linked List) เป็นการรวบรวมข้อมูลแบบเส้นตรง แต่ละองค์ประกอบหรือโหนดของรายการประกอบด้วยสองรายการ - ข้อมูลและการอ้างอิงไปยังโหนดถัดไป โหนดสุดท้ายมีการอ้างอิงไปยัง null เข้าสู่รายการเชื่อมต่อ จุดเข้าถึงเรียกว่า head ของรายการ แต่ละโหนดในรายการเก็บเนื้อหาและพอยน์เตอร์ห

  14. ฟังก์ชันเสมือนและโพลีมอร์ฟิซึมรันไทม์ (Virtual Functions and Runtime Polymorphism) ใน C++

    ฟังก์ชันเสมือน (Virtual functions) ใน C++ ใช้เพื่อสร้างรายการของพอยน์เตอร์คลาสฐานและเรียกเมธอดของคลาสลูกใดๆ ได้โดยไม่ต้องรู้ว่าออบเจ็กต์คลาสลูกเป็นประเภทใด ฟังก์ชันเสมือนจะถูกแก้ไข (resolved) ภายหลัง ในขณะรันไทม์ (runtime) การใช้งานหลักของฟังก์ชันเสมือนคือเพื่อให้ได้โพลีมอร์ฟิซึมรันไทม์ (Runtime Po

  15. อาร์กิวเมนต์เริ่มต้นและฟังก์ชันเสมือน (Default arguments and virtual function) ใน C++

    มาพิจารณาโปรแกรมตัวอย่างใน C++ เพื่อความเข้าใจง่ายขึ้นเกี่ยวกับแนวคิดนี้ ตัวอย่างโค้ด #include<iostream> using namespace std; class B { public: virtual void s(int a = 0) { cout<< In Base \n; } }; class D: public B { public: virtual void s(int a) { cout<<

  16. ฟังก์ชันเสมือนในคลาสลูก (Virtual functions in derived classes) ใน C++

    ฟังก์ชันเสมือน (Virtual functions) ใน C++ ใช้เพื่อสร้างรายการของพอยน์เตอร์คลาสฐานและเรียกเมธอดของคลาสลูกใดๆ ได้โดยไม่ต้องรู้ว่าออบเจ็กต์คลาสลูกเป็นประเภทใด ฟังก์ชันเสมือนจะถูกแก้ไข (resolved) ภายหลัง ในขณะรันไทม์ (runtime) หากฟังก์ชันเสมือนในคลาสฐานถูกประกาศเป็นฟังก์ชันสมาชิก (member function) ครั้

  17. เดสตรัคเตอร์เสมือน (Virtual Destructor) ใน C++

    การลบออบเจ็กต์ของคลาสลูก (derived class) โดยใช้พอยน์เตอร์ที่ชี้ไปยังคลาสฐาน (base class) คลาสฐานควรถูกกำหนดกับเดสตรัคเตอร์เสมือน (virtual destructor) ตัวอย่างโค้ด #include<iostream> using namespace std; class b { public: b() { cout<<Constructing base \n; } virtual ~b

  18. คอนสตรัคเตอร์เสมือน (Virtual Constructor) ใน C++

    กลไกเสมือน (virtual mechanism) ทำงานได้ก็ต่อเมื่อเรามีพอยน์เตอร์ของคลาสฐาน (base class) ที่ชี้ไปยังออบเจ็กต์ของคลาสลูก (derived class) ใน C++ คอนสตรัคเตอร์ไม่สามารถเป็นเสมือน (virtual) ได้ เนื่องจากเมื่อคอนสตรัคเตอร์ของคลาสถูกดำเนินการ ไม่มีตารางเสมือน (virtual table) ในหน่วยความจำ หมายถึงยังไม่มีพ

  19. โปรแกรม C++ สำหรับการนำอัลกอริทึมต้นไม้นิพจน์ (Expression Tree) มาใช้งาน

    ต้นไม้นิพจน์ (Expression Tree) คือต้นไม้ทวิภาคพื้นฐานที่ใช้แทนนิพจน์ ในต้นไม้นิพจน์ โหนดภายในจะสอดคล้องกับตัวดำเนินการ (operators) และโหนดใบแต่ละโหนดจะสอดคล้องกับตัวถูกดำเนินการ (operands) นี่คือโปรแกรม C++ สำหรับการนำอัลกอริทึมต้นไม้นิพจน์มาใช้งาน ซึ่งรับนิพจน์แบบ postfix เป็นอินพุตและสร้างต้นไม้น

  20. โปรแกรม C++ สำหรับการนำต้นไม้ฟิวชัน (Fusion Tree) มาใช้งาน

    ต้นไม้ฟิวชัน (Fusion Tree) เป็นโครงสร้างข้อมูลต้นไม้ที่นำอาเรย์สัมพันธ์ (associative array) ของจำนวนเต็ม w-bit มาใช้งาน นี่คือโปรแกรม C++ สำหรับการนำต้นไม้ฟิวชันมาใช้งาน ซึ่งสร้างอาเรย์ของจำนวนเต็ม 6-bit จากต้นไม้ทวิภาคที่กำหนดเป็นอินพุต อัลกอริทึม Begin รับจำนวนองค์ประกอบของต้นไม้และรับองค์ประกอ

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:46/301  20-คอมพิวเตอร์/Page Goto:1 40 41 42 43 44 45 46 47 48 49 50 51 52