Big- & Big- Big-O ที่ใช้อธิบายการเติบโตของฟังก์ชัน แต่จะมีข้อจำกัด โดยเฉพาะ เมื่อ f(x) มี O(g(x)) ก็จะมีเฉพาะขอบเขตบน(Upper bound)คือ g(x) เมื่อ f(x)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Chapter 3 Data Representation (การแทนข้อมูล)
Advertisements

ครุศาสตรมหาบัณฑิต สาขาวิชา การสอนภาษาอังกฤษเพื่อ วิชาการและงานอาชีพ
ศูนย์เรียนรู้ชุมชนเศรษฐกิจ พอเพียงบ้านซ่อง อ.พนมสารคาม จ.ฉะเชิงเทรา
สาระที่ ๒ การเขียน.
การบริหารจัดการโครงการ และการเบิกจ่ายงบประมาณ
ศึกษาข้อมูลท้องถิ่นบ้านสนาม
ยินดีต้อนรับ คณะกรรมการประเมินคุณภาพการศึกษาภายใน “สำนักส่งเสริมวิชาการและงานทะเบียน” วันอังคารที่ 23 สิงหาคม พ.ศ
Application of Electron Paramagnetic Resonance (EPR)
Lubna Shamshad (Ph.D Student) Supervisor Dr.GulRooh
Q n° R n°.
อาคารสำนักงานเขต พื้นที่การศึกษา (สพป./สพม.)
Chapter 3 Design of Discrete-Time control systems Frequency Response
ยินดีต้อนรับ นสต. ภ.๙.
การส่งเสริมจริยธรรมและคุณธรรม เพื่อการป้องกันการทุจริต
พอช.องค์การมหาชนของชุมชนไทย
ชั้นมัธยมศึกษาปีที่ ๖ โรงเรียนสาธิตมหาวิทยาลัยราชภัฏสวนสุนันทา
หน่วยที่ 2 การประกันคุณภาพภายในสถานศึกษา
หลักสูตรการศึกษานอกระบบ ระดับการศึกษาขั้นพื้นฐาน พุทธศักราช 2551
Multiple Input Multiple Output (MIMO)
บทที่ 7 TAS 17 (ปรับปรุง 2558): สัญญาเช่า (Leases)
หลักการสร้างมาตรวัดทางจิตวิทยา
โครงการส่งเสริมการพัฒนาคุณภาพงาน คณะวิทยาศาสตร์ มหาวิทยาลัยเชียงใหม่
แผนการจัดการเรียนรู้ กลุ่มสาระการเรียนรู้วิทยาศาสตร์
แนวการตรวจสอบภายใน การตรวจสอบรถราชการ
ทะเบียนราษฎร.
นายธนวิทย์ โพธิ์พฤกษ์ เลขที่ 8 นายอนุสรณ์ ขำหลง เลขที่ 29
เรื่อง การบริหารการศึกษาตาม พ.ร.บ ระเบียบบริหารราชการกระทรวงศึกษาธิการ
เอกสารประกอบการบรรยายครั้ง ๒ วิชาซื้อขาย - เช่าทรัพย์ - เช่าซื้อ
ระเบียบกระทรวงมหาดไทย
บทที่ 12 การวิเคราะห์สหสัมพันธ์และการถดถอย
DATA STRUCTURES AND ALGORITHMS
ขั้นตอนการจัดตั้งกลุ่มส่งเสริมอาชีพ จังหวัดนครราชสีมา ปี ๒๕๕๘/๕๙
หลักการจัดกิจกรรมนันทนาการ
การประชุมผู้บริหารระดับสูงกระทรวงวัฒนธรรม ครั้งที่ ๔/๒๕๖๐
การเบิกจ่ายเงินเกี่ยวกับค่าใช้จ่าย ในการบริหารงานของส่วนราชการ
การแก้ไขปัญหา สหกรณ์เครดิตยูเนี่ยนคลองจั่น จำกัด
ขั้นตอนของกิจกรรม : ปฏิบัติเป็นประจำ เพื่อให้เกิดการพัฒนาอย่างต่อเนื่อง
ตอนที่ 2.๒ บทบาทหน้าที่ของเจ้าหน้าที่ส่งเสริมการเกษตรระดับอำเภอ
บทที่ 4 การกระจาย อำนาจด้านการคลัง
งานเงินสมทบและการตรวจสอบ
ยินดีต้อนรับเข้าสู่บทเรียนคอมพิวเตอร์ วัยรุ่นไทยใส่ใจวัฒนธรรม เรื่อง
การพัฒนาระบบบริหารจัดการกำลังคนด้านสุขภาพ “การพัฒนาบุคลากร”
ค่าใช้จ่ายต่างๆ ในโครงการฯ
วันเสาร์ที่ 2 กรกฎาคม 2559 วิทยาลัยเทคโนโลยีอักษรพัทยา
วิชาสังคมศึกษา ม.3 สาระที่ 1 ศาสนา ศีลธรรม จริยธรรม.
มหาวิยาลัยราชภัฏนครราชสีมา
โครงการสนับสนุนสินเชื่อเกษตรกรชาวสวนยาง รายย่อยเพื่อประกอบอาชีพเสริม
ความหมายของหนี้สาธารณะ
การจัดการชั้นเรียน.
การบริหารการเงิน ในสถานศึกษา
องค์ประกอบและผลกระทบของธุรกิจไมซ์
โคลง ร่าย และ โดยครูธาริตา นพสุวรรณ
Matrix 1.Thamonaporn intasuwan no.7 2.Wannisa chawlaw no.13 3.Sunita taoklang no.17 4.Aungkhana mueagjinda no.20.
สมาชิกโต๊ะ 1 นายสุรวินทร์ รีเรียง นายภาณุวิชญ์ อนุศรี
นำเสนอ วัดเกาะชัน ด.ช.ปกรณ์ ร้อยจันทร์ ม.2/7 เลขที่ 19
รศ.ดร.อนันต์ จันทรโอภากร
การเขียนวิจารณ์วรรณกรรม ๒
การยืมเงิน จากแหล่งเงินงบประมาณรายได้
วิชา หลักการตลาด บทที่ 7 การออกแบบกลยุทธ์ราคา
ผังมโนทัศน์สาระการเรียนรู้ภาษาไทย ชั้นมัธยมศึกษาปีที่ ๑
สาระสำคัญพ.ร.บ.การทวงถามหนี้ พ.ศ.๒๕๕๘ สาระสำคัญพ.ร.บ.การทวงถามหนี้ พ.ศ.๒๕๕๘.
การบัญชีตามความรับผิดชอบและ การประเมินผลการปฏิบัติงาน
ตำบลหนองพลับ ประวัติความเป็นมา
แบบทดสอบ เรื่อง ความน่าจะเป็น.
การปฏิรูประบบศาลยุติธรรม หลังรัฐประหาร 2557
ธาตุ สารประกอบ และปฏิกิริยาเคมี
ข้อกำหนด/มาตรฐาน ด้านสุขาภิบาลอาหาร
การบริหารหลักสูตร ความหมาย : การดำเนินงานที่เกี่ยวข้องกับการทำหลักสูตร และเอกสารประกอบหลักสูตร ไปสู่การปฏิบัติในสถานการณ์จริงหรือกิจกรรมการเรียนการสอนให้เป็นไปตามเป้าหมายที่กำหนดไว้ในหลักสูตรโดยอาศัยการสนับสนุนและร่วมมือจากบุคคลที่เกี่ยวข้องกับการใช้หลักส
PHYSICS by P’Tum LINE
การพิจารณาสัญชาติของบุคคล
ใบสำเนางานนำเสนอ:

Big- & Big- Big-O ที่ใช้อธิบายการเติบโตของฟังก์ชัน แต่จะมีข้อจำกัด โดยเฉพาะ เมื่อ f(x) มี O(g(x)) ก็จะมีเฉพาะขอบเขตบน(Upper bound)คือ g(x) เมื่อ f(x) โตขึ้นด้วยค่า x แต่ Big-O ไม่มีขอบเขตล่าง (Lower bound) Donald Knuth ได้แนะนำ Big- & Big- โดย Big- จะมีทั้งขอบเขตบนและขอบเขตล่างของ 𝑓(𝑥)

Big- Def. เมื่อ f และ g เป็นฟังก์ชันจากเซตของจำนวนเต็มหรือเซตของจำนวนจริงไปยังเซตของจำนวนจริง เรากล่าวว่า 𝑓(𝑥) มี Ω 𝑔 𝑥 ถ้ามีค่าคงที C และ k ที่เป็นจำนวนเต็มบวกที่ทำให้ 𝑓(𝑥) ≥𝐶 𝑔 𝑥 เมื่อ 𝑥>𝑘 ในกรณีนี้จะอ่านว่า "𝑓 𝑥 𝑖𝑠 𝑏𝑖𝑔−𝑂𝑚𝑒𝑔𝑎 𝑜𝑓 𝑔 𝑥 "

Ex: Big- ฟังก์ชัน 𝑓 𝑥 =8 𝑥 3 +5 𝑥 2 +7 𝑖𝑠 Ω 𝑔 𝑥 โดยที่ 𝑔 𝑥 = 𝑥 3 ตัวอย่างนี้เห็นได้ชัดว่า 𝑓 𝑥 =8 𝑥 3 +5 𝑥 2 +7 ≥8 𝑥 3 , ∀𝑥∈𝑅 ซึ่งสมมูลกับ 𝑔 𝑥 = 𝑥 3 𝑖𝑠 𝑂 𝑓 𝑥 จะเห็นว่า Big- กับ Big-O ของ 𝑓 𝑥 มีความเชื่อมโยงกัน นั่นคือ 𝑓 𝑥 𝑖𝑠 Ω 𝑔 𝑥 ≡𝑔 𝑥 𝑖𝑠 𝑂 𝑓 𝑥

Big- เมื่อ 𝑓 𝑥 มี Θ 𝑔 𝑥 ย่อมหมายความถึง g 𝑥 มี Θ 𝑓 𝑥 ด้วยเหตุนี้ 𝑓 𝑥 𝑖𝑠Θ 𝑔 𝑥 ↔𝑔 𝑥 𝑖𝑠Θ 𝑓 𝑥

Algorithmic Complexity An analysis of the time required to solve a problem of a particular size involves the time complexity of the algorithm. An analysis of the computer memory required involves the space complexity of the algorithm. Measure running time by counting the number of “basic operations”.

Running Time Basic steps— Assignment Increment Comparison Negation Return Random array access Function output access etc. In a particular problem, may tell you to consider other operations (e.g. multiplication) and ignore all others

Algorithm 1 Finding the Maximum int fMax(int a[n] ) //หาค่าสูงสุดในอะเรย์ ที่ยังไม่ได้เรียงลำดับข้อมูล { int max = a1; for(i =2; i<=n, i++) //i<=n เปรียบเทียบ n-1 ครั้ง if(max > ai) //max>ai เปรียบเทียบ n-1 ครั้ง max = ai //+1 } return max; 2(n-1)+1 = 2n-1 ⟹Θ 𝑛

//ในลูปมีการเปรียบเทียบสองครั้ง //เมื่อพบข้อมูล=> จะมีการเปรียบเทียบ //2i+1 ครั้ง //เมื่อไม่พบข้อมูล(Worst-case complexity) //จะมีการเปรียบเทียบ 2n+1+1 ครั้ง +1 มาจาก else

Example 4

จากการพิสูจน์ด้วยอุปนัย

Recursive Algorithms long factorial(int n) { if (n<=0) return 1; return n*factorial(n-1); }

Recursive Algorithms Compute 5! long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } Compute 5!

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(2)=2·f(1) f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(1)=1·f(0) f(2)=2·f(1) f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } f(0)= 1 f(1)=1·f(0) f(2)=2·f(1) f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 1·1= 1 f(2)=2·f(1) f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 2·1= 2 f(3)=3·f(2) f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 3·2= 6 f(4)=4·f(3) f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 4·6= 24 f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 4·6= 24 f(5)=5·f(4)

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } 5·24= 120

Recursive Algorithms long factorial(int n){ if (n<=0) return 1; return n*factorial(n-1); } Return 5! = 120

Running time of 1st algorithm boolean isOnto( function f: (1, 2,…, n)  (1, 2,…, m) ){ if( m > n ) return false soFarIsOnto = true for( j = 1 to m ){ soFarIsOnto = false for(i = 1 to n ){ if ( f(i ) == j ) soFarIsOnto = true if( !soFarIsOnto ) return false } return true; 1 step OR: 1 step (assigment) m loops: 1 increment plus 1 step (assignment) n loops: 1 increment plus 1 step possibly leads to: 1 step (return) possibly 1 step

Running time of 1st algorithm 1 step (m>n) OR: 1 step (assigment) m loops: 1 increment plus 1 step (assignment) n loops: 1 increment plus 1 step possibly leads to: 1 step (return) possibly 1 step WORST-CASE running time: Number of steps = 1 OR 1+ 1 + m · (1+ 1 + n · (1+1 + 1 + 1 ) = 1 (if m>n) OR 5mn+3m+2