หน้าแรก
หน้าแรก
process Burst time A 4 B 1 C 8 D 1 ไทม์สไลซ์=10 หน่วย A B C D A C C C 0 2 3 5 6 8 10 12 14 ดังนั้น A จะครบ 8 รอบ
เมื่อเรียงลำดับรายการแล้ว เราสามารถใช้เทคนิคการค้นหาแบบไบนารีเพื่อค้นหารายการในรายการได้ ในขั้นตอนนี้ รายการทั้งหมดจะถูกแบ่งออกเป็นสองรายการย่อย หากพบรายการในตำแหน่งตรงกลาง รายการนั้นจะส่งกลับตำแหน่ง มิฉะนั้นจะข้ามไปที่รายการย่อยด้านซ้ายหรือด้านขวา และทำขั้นตอนเดิมอีกครั้งจนกว่าจะพบรายการหรือเกินช่ว
การค้นหาแบบเอ็กซ์โพเนนเชียลเรียกอีกอย่างว่าการค้นหาแบบทวีคูณหรือแบบควบ กลไกนี้ใช้เพื่อค้นหาช่วงที่อาจแสดงคีย์การค้นหา ถ้า L และ U เป็นขอบเขตบนและล่างของรายการ ดังนั้น L และ U จะเป็นยกกำลัง 2 สำหรับส่วนสุดท้าย U คือตำแหน่งสุดท้ายของรายการ ด้วยเหตุนี้จึงเรียกว่าเลขชี้กำลัง หลังจากพบช่วงเฉพาะแล้ว จะใช
สำหรับเทคนิคการค้นหาแบบไบนารี รายการจะถูกแบ่งออกเป็นส่วนเท่าๆ กัน สำหรับเทคนิคการค้นหาการประมาณค่า กระบวนการจะพยายามค้นหาตำแหน่งที่แน่นอนโดยใช้สูตรการประมาณค่า หลังจากพบตำแหน่งโดยประมาณแล้ว ก็สามารถแยกรายการโดยใช้ตำแหน่งนั้นได้ เนื่องจากพยายามค้นหาตำแหน่งที่แน่นอนทุกครั้ง ดังนั้นเวลาในการค้นหาจึงลดล
เทคนิคการค้นหาแบบข้ามยังใช้ได้กับรายการที่เรียงลำดับด้วย มันสร้างบล็อกและพยายามค้นหาองค์ประกอบในบล็อกนั้น หากรายการไม่อยู่ในบล็อก รายการจะเลื่อนทั้งบล็อก ขนาดบล็อกขึ้นอยู่กับขนาดของรายการ หากขนาดของรายการเป็น n ขนาดบล็อกจะเป็น √n หลังจากพบบล็อกที่ถูกต้องแล้ว จะพบรายการโดยใช้เทคนิคการค้นหาเชิงเส้น กา
เทคนิคการค้นหาเชิงเส้นเป็นเทคนิคที่ง่ายที่สุด ในเทคนิคนี้ รายการจะถูกค้นหาทีละรายการ ขั้นตอนนี้ใช้ได้กับชุดข้อมูลที่ไม่ได้เรียงลำดับด้วย การค้นหาเชิงเส้นเรียกอีกอย่างว่าการค้นหาตามลำดับ มีชื่อเป็นเส้นตรงเนื่องจากความซับซ้อนของเวลาอยู่ในลำดับของ n O(n) ความซับซ้อนของเทคนิคการค้นหาเชิงเส้น ความซับซ้อ
เช่นเดียวกับการค้นหาแบบไบนารี มันยังแยกรายการออกเป็นรายการย่อย ขั้นตอนนี้แบ่งรายการออกเป็นสามส่วนโดยใช้ค่ากลางสองตัว เนื่องจากรายการถูกแบ่งออกเป็นส่วนย่อยต่างๆ มากขึ้น จึงช่วยลดเวลาในการค้นหาค่าคีย์ ความซับซ้อนของเทคนิคการค้นหาแบบสามส่วน ความซับซ้อนของเวลา:O(log3 n) ความซับซ้อนของอวกาศ:O(1) อินพุต
Bubble Sort คืออัลกอริธึมการจัดเรียงแบบเปรียบเทียบ ในอัลกอริธึมนี้องค์ประกอบที่อยู่ติดกันจะถูกเปรียบเทียบและสลับเพื่อสร้างลำดับที่ถูกต้อง อัลกอริธึมนี้ง่ายกว่าอัลกอริธึมอื่น แต่ก็มีข้อเสียอยู่บ้าง อัลกอริทึมนี้ไม่เหมาะกับชุดข้อมูลจำนวนมาก ต้องใช้เวลามากในการแก้ปัญหาการจัดเรียง ความซับซ้อนของเทคนิคกา
CSMA ที่ไม่ต่อเนื่องเป็นเวอร์ชันที่ไม่ก้าวร้าวของโปรโตคอล Carrier Sense Multiple Access (CMSA) ที่ทำงานในเลเยอร์ Medium Access Control (MAC) การใช้โปรโตคอล CMSA ทำให้ผู้ใช้หรือโหนดมากกว่าหนึ่งรายส่งและรับข้อมูลผ่านสื่อที่ใช้ร่วมกันซึ่งอาจเป็นสายเคเบิลเส้นเดียวหรือใยแก้วนำแสงที่เชื่อมต่อหลายโหนด หรือ
CSMA แบบต่อเนื่อง 1 ครั้งเป็นเวอร์ชันเชิงรุกของโปรโตคอล Carrier Sense Multiple Access (CMSA) ที่ทำงานในเลเยอร์ Medium Access Control (MAC) การใช้โปรโตคอล CMSA ทำให้ผู้ใช้หรือโหนดมากกว่าหนึ่งรายส่งและรับข้อมูลผ่านสื่อที่ใช้ร่วมกันซึ่งอาจเป็นสายเคเบิลเส้นเดียวหรือใยแก้วนำแสงที่เชื่อมต่อหลายโหนด หรือส่
P-persistent CSMA เป็นแนวทางของโปรโตคอล Carrier Sense Multiple Access (CMSA) ที่รวมข้อดีของ CMSA 1 แบบถาวรและ CMSA แบบไม่ต่อเนื่อง การใช้โปรโตคอล CMSA ทำให้ผู้ใช้หรือโหนดมากกว่าหนึ่งรายส่งและรับข้อมูลผ่านสื่อที่ใช้ร่วมกันซึ่งอาจเป็นสายเคเบิลเส้นเดียวหรือใยแก้วนำแสงที่เชื่อมต่อหลายโหนด หรือส่วนหนึ่งข
Carrier Sense Multiple Access พร้อม Collision Detection (CSMA/CD) เป็นโปรโตคอลเครือข่ายสำหรับการส่งข้อมูลของผู้ให้บริการที่ทำงานในเลเยอร์ Medium Access Control (MAC) รับรู้หรือรับฟังว่าช่องสัญญาณที่ใช้ร่วมกันสำหรับการส่งสัญญาณไม่ว่างหรือไม่ และเลื่อนการส่งสัญญาณออกไปจนกว่าช่องสัญญาณจะว่าง เทคโนโลยีก
Carrier Sense Multiple Access พร้อมการหลีกเลี่ยงการชน (CSMA/CA) เป็นโปรโตคอลเครือข่ายสำหรับการส่งข้อมูลของผู้ให้บริการที่ทำงานในเลเยอร์ Medium Access Control (MAC) ตรงกันข้ามกับ CSMA/CD (Carrier Sense Multiple Access/Collision Detection) ที่เกี่ยวข้องกับการชนกันหลังจากเกิดขึ้น CSMA/CA จะป้องกันการชน
Data Type เป็นประเภทข้อมูลที่สามารถใช้ในโปรแกรมคอมพิวเตอร์ต่างๆ ได้ มันหมายถึงประเภทเช่นจำนวนเต็ม, ลอย ฯลฯ ช่องว่างเช่นจำนวนเต็มจะใช้เวลา 4 ไบต์, อักขระจะใช้พื้นที่ 1 ไบต์เป็นต้น ประเภทข้อมูลนามธรรมเป็นชนิดข้อมูลพิเศษ ซึ่งพฤติกรรมถูกกำหนดโดยชุดของค่าและชุดของการดำเนินการ มีการใช้คำหลัก บทคัดย่อ เนื
โครงสร้างข้อมูล Stack เป็น Last In First Out สแต็กถูกใช้ในพื้นที่ที่แตกต่างกันสำหรับการประเมินนิพจน์ กลยุทธ์การโทรและการเรียกซ้ำ ฯลฯ สแต็กมีการดำเนินการพื้นฐานบางอย่าง ในที่นี้ เราจะเห็นการดำเนินการของ stack และดูตัวอย่างการใช้ stack ADT ADT (ประเภทข้อมูลนามธรรม) เป็นประเภทข้อมูลพิเศษ ซึ่งพฤติกรรมถ
ที่นี่เราจะดูว่าการเรียกซ้ำหางคืออะไร การเรียกซ้ำส่วนท้ายนั้นโดยทั่วไปแล้วจะใช้ฟังก์ชันแบบเรียกซ้ำเป็นคำสั่งสุดท้ายของฟังก์ชัน ดังนั้น เมื่อไม่มีอะไรเหลือให้ทำหลังจากกลับมาจากการโทรแบบเรียกซ้ำ ซึ่งเรียกว่าการเรียกซ้ำส่วนท้าย เราจะเห็นตัวอย่างหนึ่งของการเรียกซ้ำส่วนท้าย ตัวอย่าง #include <iostream
โครงสร้างข้อมูลคิวเข้าก่อนออกก่อน คิวถูกใช้ในพื้นที่ต่างๆ สำหรับอัลกอริธึมการข้ามผ่านกราฟ Breadth First Search เป็นต้น คิวมีการดำเนินการพื้นฐานบางอย่าง ที่นี่เราจะเห็นการดำเนินการของคิวเหล่านั้น และดูตัวอย่างหนึ่งรายการโดยใช้ ADT ของคิว ADT (ประเภทข้อมูลนามธรรม) เป็นประเภทข้อมูลพิเศษ ซึ่งพฤติกรรมถู
วิธีการนับขั้นตอนเป็นวิธีหนึ่งในการวิเคราะห์อัลกอริทึม ในวิธีนี้ เรานับจำนวนครั้งที่ดำเนินการคำสั่งหนึ่งคำสั่ง จากนั้นเราจะพยายามค้นหาความซับซ้อนของอัลกอริทึม สมมติว่าเรามีอัลกอริธึมเดียวในการค้นหาตามลำดับ สมมติว่าแต่ละคำสั่งจะใช้ c1, c2, …. ระยะเวลาในการดำเนินการ จากนั้นเราจะพยายามค้นหาความซับซ้อน
ในส่วนนี้เราจะมาดูวิธีการคูณเมทริกซ์สองตัว การคูณเมทริกซ์สามารถทำได้ก็ต่อเมื่อตรงตามเงื่อนไขนี้ สมมติว่าเมทริกซ์สองตัวคือ A และ B และมิติของมันคือ A (m x n) และ B (p x q) เมทริกซ์ผลลัพธ์จะพบได้ก็ต่อเมื่อ n =p จากนั้นลำดับของเมทริกซ์ผลลัพธ์ C จะเป็น (m x q) อัลกอริทึม matrixMultiply(A, B): Assume dim
การวิเคราะห์ค่าตัดจำหน่าย การวิเคราะห์นี้ใช้เมื่อการดำเนินการเป็นครั้งคราวช้ามาก แต่การดำเนินการส่วนใหญ่ที่ดำเนินการบ่อยมากจะเร็วกว่า ในโครงสร้างข้อมูล เราต้องวิเคราะห์ค่าตัดจำหน่ายสำหรับตารางแฮช ชุดแยกส่วน ฯลฯ ในตารางแฮช เวลาส่วนใหญ่ที่ความซับซ้อนของเวลาในการค้นหาคือ O(1) แต่บางครั้งก็ดำเนินการ O