คำถามติดแท็ก asymptotics

คำถามเกี่ยวกับสัญลักษณ์และการวิเคราะห์เชิงเส้นกำกับ

1
อัลกอริทึมที่มีความซับซ้อน O (sqrt (N)) SPACE หรือไม่
มีอัลกอริทึมที่รู้จักกันดีสำหรับปัญหาที่เกิดขึ้นซึ่งต้องใช้ความซับซ้อนของ O (sqrt (N)) หรือไม่? ฉันรู้ว่าอัลกอริทึมที่มีความซับซ้อนครั้งใหญ่ที่มีอยู่

2
ฟังก์ชั่นที่ไม่คำนวณเพิ่มขนาดใหญ่ขึ้น asymptotically หรือไม่?
ฉันอ่านเกี่ยวกับตัวเลขบีเวอร์ที่ยุ่งและวิธีการที่พวกเขาเติบโตขนาดใหญ่กว่าฟังก์ชั่นการคำนวณใด ๆ ทำไมเป็นเช่นนี้ เป็นเพราะฟังก์ชั่นที่ไม่สามารถคำนวณได้ของช่องคลอดไม่ว่างหรือไม่? ถ้าเป็นเช่นนั้นแล้วฟังก์ชั่นที่ไม่คำนวณทั้งหมดจะโตขึ้นขนาดใหญ่กว่าแบบที่คำนวณได้หรือไม่ แก้ไข: คำตอบที่ดีด้านล่าง แต่ฉันอยากจะอธิบายด้วยภาษาอังกฤษที่ดีกว่าสิ่งที่ฉันเข้าใจพวกเขา หากมีฟังก์ชันที่คำนวณได้ f ซึ่งเติบโตเร็วกว่าฟังก์ชันบีเวอร์ที่ยุ่งอยู่นั่นหมายความว่าฟังก์ชันบีเวอร์ไม่ว่างนั้นถูกล้อมรอบด้วย f กล่าวอีกนัยหนึ่งเครื่องทัวริงจะต้องเรียกใช้สำหรับ f (n) หลายขั้นตอนเพื่อตัดสินใจปัญหาการหยุดชะงัก เนื่องจากเราทราบว่าปัญหาการหยุดชะงักไม่สามารถคาดเดาได้การคาดการณ์เบื้องต้นของเราจึงผิด ดังนั้นฟังก์ชั่นช่องคลอดที่ยุ่งจะเติบโตเร็วกว่าฟังก์ชั่นที่คำนวณได้ทั้งหมด

2
ห่วงโซ่ไม่มีที่สิ้นสุดของบิ๊ก
ก่อนอื่นให้ฉันเขียนนิยามของใหญ่เพื่อทำสิ่งที่ชัดเจนOOO f(n)∈O(g(n))⟺∃c,n0>0f(n)∈O(g(n))⟺∃c,n0>0f(n)\in O(g(n))\iff \exists c, n_0\gt 0เช่นนั้น0≤f(n)≤cg(n),∀n≥n00≤f(n)≤cg(n),∀n≥n00\le f(n)\le cg(n), \forall n\ge n_0 สมมติว่าเรามีฟังก์ชั่นจำนวน จำกัด :น่าพอใจ:f1,f2,…fnf1,f2,…fnf_1,f_2,\dots f_n O(f1)⊆O(f2)⋯⊆O(fn)O(f1)⊆O(f2)⋯⊆O(fn)O(f_1)\subseteq O(f_2)\dots \subseteq O(f_n) โดย transitivity ของเรามี:OOOO(f1)⊆O(fn)O(f1)⊆O(fn)O(f_1)\subseteq O(f_n) สิ่งนี้มีไว้หรือไม่ถ้าเรามีสายโซ่ที่ไม่สิ้นสุดของ ? อีกนัยหนึ่งคือ ?O′sO′sO'sO(f1)⊆O(f∞)O(f1)⊆O(f∞)O(f_1) \subseteq O(f_\infty) ฉันมีปัญหาในการจินตนาการว่าเกิดอะไรขึ้น

3
การพูดว่า“ มีประสิทธิภาพมากกว่าแบบเชิงเส้นกำกับ” หมายความว่าอย่างไร
มันหมายความว่าอย่างไรเมื่อเราบอกว่าอัลกอริทึมเป็น asymptotically ประสิทธิภาพมากขึ้นกว่า ?XXXYYY XXXจะเป็นตัวเลือกที่ดีกว่าสำหรับอินพุตทั้งหมด XXXจะเป็นตัวเลือกที่ดีกว่าสำหรับอินพุตทั้งหมดยกเว้นอินพุตขนาดเล็ก XXXจะเป็นตัวเลือกที่ดีกว่าสำหรับอินพุตทั้งหมดยกเว้นอินพุตขนาดใหญ่ YYYจะเป็นตัวเลือกที่ดีกว่าสำหรับอินพุตขนาดเล็ก ลิงค์สำหรับคำถามนี้อยู่ที่นี่ http://quiz.geeksforgeeks.org/algorithms-analysis-of-algorithms-question-16/ ฉันคิดว่าอัลกอริธึมที่มีประสิทธิภาพมากกว่าแบบ asymptotically ควรทำงานกับอินพุตทั้งหมด แต่ฉันไม่ได้รับเหตุผลที่อยู่เบื้องหลัง "ใช้งานได้กับอินพุตทั้งหมดยกเว้นอินพุตขนาดเล็ก"

1
การวิเคราะห์แบบ Asymptotic สำหรับตัวแปรสองตัว?
การวิเคราะห์เชิงเส้นกำกับ (big o, little o, theta ใหญ่, theta ใหญ่ ฯลฯ ) ถูกกำหนดไว้อย่างไรสำหรับฟังก์ชั่นที่มีตัวแปรหลายตัว? ฉันรู้ว่าบทความ Wikipedia มีหัวข้ออยู่ แต่ใช้สัญกรณ์ทางคณิตศาสตร์จำนวนมากซึ่งฉันไม่คุ้นเคย ฉันยังพบกระดาษต่อไปนี้: http://people.cis.ksu.edu/~rhowell/asymptotic.pdfอย่างไรก็ตามกระดาษนี้มีความยาวมากและให้การวิเคราะห์ที่สมบูรณ์ของการวิเคราะห์เชิง asymptotic แทนที่จะให้คำจำกัดความ การใช้สัญลักษณ์ทางคณิตศาสตร์บ่อยครั้งทำให้ยากที่จะเข้าใจ ใครสามารถให้คำจำกัดความของการวิเคราะห์เชิงเส้นกำกับโดยไม่มีเครื่องหมายทางคณิตศาสตร์ที่ซับซ้อน?

2
ลดความซับซ้อนของ n multichoose k
ฉันมีอัลกอริทึมแบบเรียกซ้ำที่มีความซับซ้อนของเวลาเทียบเท่ากับการเลือกองค์ประกอบ k จาก n ด้วยการทำซ้ำและฉันสงสัยว่าฉันจะได้รับนิพจน์โอใหญ่ที่ง่ายขึ้นหรือไม่ ในกรณีของฉันอาจมากกว่าและพวกมันเติบโตอย่างอิสระkkknnn โดยเฉพาะฉันคาดหวังว่าจะมีการแสดงออกที่ชัดเจนบางอย่าง สิ่งที่ดีที่สุดที่ฉันพบได้ก็คือการประมาณดังนั้นฉันจึงสามารถใช้มันได้ แต่ฉันสงสัยว่าฉันจะได้อะไรที่ดีกว่าO ( n ! ) ≈ O ( ( n / 2 )n)O(n!)≈O((n/2)n)O(n!) \approx O((n/2)^n) O ( ( n + k - 1k) )=O(?)O((n+k-1k))=O(?)O\left({{n+k-1}\choose{k}}\right) = O(?)

2
คือ
ดังนั้นฉันมีคำถามนี้เพื่อพิสูจน์คำสั่ง: O ( n ) ⊂ Θ ( n )O(n)⊂Θ(n)O(n)\subset\Theta(n) ... ผมไม่จำเป็นต้องรู้วิธีที่จะพิสูจน์มันเพียงว่าในใจของฉันนี้ทำให้รู้สึกไม่และผมคิดว่ามันค่อนข้างจะเป็นไปได้ว่า(n)Θ ( n ) ⊂ O ( n )Θ(n)⊂O(n)\Theta(n)\subset O(n) ความเข้าใจของฉันคือเป็นชุดของฟังก์ชั่นทั้งหมดที่ไม่ได้แย่ไปกว่าในขณะที่คือชุดของฟังก์ชั่นทั้งหมดที่ไม่ดีขึ้นและไม่แย่ไปกว่า nn Θ ( n )O ( n )O(n)O(n)nnnΘ ( n )Θ(n)\Theta(n) ใช้นี้ผมอาจจะคิดว่าเป็นตัวอย่างของการพูดฟังก์ชั่นอย่างต่อเนื่องค ฟังก์ชั่นนี้จะเป็นองค์ประกอบของอย่างแน่นอนเพราะจะไม่เลวร้ายยิ่งกว่าเมื่อเข้าใกล้จำนวนที่มากพอO ( n ) n nก.( n ) = cก.(n)=คg(n)=cO ( n )O(n)O(n)nnnnnn แต่ฟังก์ชั่นเดียวกันก.ก.gจะไม่เป็นองค์ประกอบของΘ ( n …

1
การแยกประเภทการปรับแต่ง
ที่ทำงานฉันได้รับมอบหมายให้อนุมานข้อมูลบางประเภทเกี่ยวกับภาษาแบบไดนามิก ฉันเขียนลำดับของข้อความไปยังletนิพจน์ที่ซ้อนกันเช่น: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then { T; Z } else { F; Z } เนื่องจากฉันเริ่มต้นจากข้อมูลประเภททั่วไปและพยายามอนุมานประเภทที่เฉพาะเจาะจงมากขึ้นตัวเลือกที่เป็นธรรมชาติคือประเภทการปรับแต่ง ตัวอย่างเช่นตัวดำเนินการตามเงื่อนไขส่งคืนการรวมของประเภทของสาขาที่เป็นจริงและเท็จ …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

2
ทฤษฎีบทหลักไม่สามารถใช้ได้?
รับสมการแบบเรียกซ้ำดังนี้ T(n)=2T(n2)+nlognT(n)=2T(n2)+nlog⁡n T(n) = 2T\left(\frac{n}{2}\right)+n\log nเราต้องการประยุกต์ใช้ทฤษฎีบทหลักและทราบว่า nlog2(2)=n.nlog2⁡(2)=n. n^{\log_2(2)} = n. ตอนนี้เราตรวจสอบสองกรณีแรกสำหรับนั่นคือว่าε>0ε>0\varepsilon > 0 nlogn∈O(n1−ε)nlog⁡n∈O(n1−ε)n\log n \in O(n^{1-\varepsilon})หรือ nlogn∈Θ(n)nlog⁡n∈Θ(n)n\log n \in \Theta(n)(N) ทั้งสองกรณีไม่พอใจ ดังนั้นเราต้องตรวจสอบกรณีที่สามนั่นก็คือ nlogn∈Ω(n1+ε)nlog⁡n∈Ω(n1+ε)n\log n \in \Omega(n^{1+\varepsilon}) ) ฉันคิดว่าเงื่อนไขที่สามไม่เป็นที่พอใจเช่นกัน แต่ทำไม และอะไรจะเป็นคำอธิบายที่ดีสำหรับสาเหตุที่ไม่สามารถนำทฤษฎีบทต้นแบบมาใช้ได้ในกรณีนี้

2
จะพิสูจน์ได้อย่างไรว่า ?
นี่เป็นคำถามทำการบ้านจากหนังสือของ Udi Manber คำใบ้ใด ๆ จะดี :) ฉันต้องแสดงให้เห็นว่า: n(log3(n))5=O(n1.2)n(log3⁡(n))5=O(n1.2)n(\log_3(n))^5 = O(n^{1.2}) ฉันลองใช้ทฤษฎีบท 3.1 ของหนังสือ: f(n)c=O(af(n))f(n)c=O(af(n))f(n)^c = O(a^{f(n)}) (สำหรับ , )c>0c>0c > 0a>1a>1a > 1 Substituing: (log3(n))5=O(3log3(n))=O(n)(log3⁡(n))5=O(3log3⁡(n))=O(n)(\log_3(n))^5 = O(3^{\log_3(n)}) = O(n) แต่n(log3(n))5=O(n⋅n)=O(n2)≠O(n1.2)n(log3⁡(n))5=O(n⋅n)=O(n2)≠O(n1.2)n(\log_3(n))^5 = O(n\cdot n) = O(n^2) \ne O(n^{1.2}) ขอบคุณสำหรับความช่วยเหลือ

1
ความซับซ้อนของ Big-Oh time สามารถมีตัวแปรมากกว่าหนึ่งตัวได้หรือไม่?
ให้เราพูดเช่นฉันกำลังประมวลผลสตริงที่ต้องมีการวิเคราะห์สองสาย ฉันไม่ได้รับข้อมูลเกี่ยวกับความยาวของพวกเขาดังนั้นพวกเขาจึงมาจากสองครอบครัวที่แตกต่างกัน มันจะเป็นที่ยอมรับหรือไม่ที่จะเรียกความซับซ้อนของอัลกอริทึมหรือ (ขึ้นอยู่กับว่าเราใช้ความไร้เดียงสาหรืออัลกอริธึมที่เหมาะสมที่สุด)O ( n + m )O ( n ∗ m )O(n∗m)O(n * m)O ( n + m )O(n+m)O(n + m) ในหลอดเลือดดำที่คล้ายกันให้เราเข้าใจว่าอัลกอริทึมที่เราเลือกต้องใช้สองขั้นตอนจริง ๆ แล้วขั้นตอนการติดตั้งบนสตริงแรกซึ่งช่วยให้เราสามารถประมวลผลสตริงอื่น ๆ จำนวนเท่าใดก็ได้โดยไม่ต้องเสียค่าใช้จ่ายเริ่มแรก จะถือว่าเหมาะสมหรือไม่ที่จะบอกว่ามีการก่อสร้างตามด้วยการคำนวณจำนวนใด ๆO ( m )O ( n )O(n)O(n)O ( m )O(m)O(m) จะเหมาะสมไหมที่จะเรียกพวกเขาว่าเพราะการคำนวณทั้งสองเป็นแบบเชิงเส้น?O ( n )O(n)O(n)

2
วิธีการหารือค่าสัมประสิทธิ์ในสัญกรณ์ใหญ่ -O
สัญกรณ์ใดที่ใช้เพื่อพูดคุยเกี่ยวกับสัมประสิทธิ์ของฟังก์ชั่นในสัญกรณ์ใหญ่ -O ฉันมีสองหน้าที่: f(x)=7x2+4x+2f(x)=7x2+4x+2f(x) = 7x^2 + 4x +2 g(x)=3x2+5x+4g(x)=3x2+5x+4g(x) = 3x^2 + 5x +4 เห็นได้ชัดว่าทั้งสองฟังก์ชั่นคือแน่นอนแต่นั่นไม่อนุญาตให้มีการเปรียบเทียบมากไปกว่านั้น ฉันจะพูดถึงค่าสัมประสิทธิ์ 7 และ 3 ได้อย่างไรการลดค่าสัมประสิทธิ์เป็น 3 ไม่เปลี่ยนความซับซ้อนเชิงซีโมติค แต่ก็ยังคงสร้างความแตกต่างอย่างมีนัยสำคัญต่อการใช้งานไทม์ / หน่วยความจำO(x2)O(x2)O(x^2)Θ(x2)Θ(x2)\Theta(x^2) มันเป็นเรื่องที่ไม่ถูกต้องที่จะบอกว่าคือและเป็น ? มีสัญกรณ์อื่น ๆ ที่คำนึงถึงสัมประสิทธิ์หรือไม่? หรือจะเป็นวิธีที่ดีที่สุดในการหารือเรื่องนี้คืออะไร?fffO(7x2)O(7x2)O(7x^2)gggO(3x2)O(3x2)O(3x^2)

1
การประมาณเชิงเชิงความสัมพันธ์ของการเกิดซ้ำ (Akra-Bazzi ดูเหมือนจะไม่นำไปใช้)
สมมติว่าอัลกอริทึมมีความสัมพันธ์ที่เกิดขึ้นประจำรันไทม์: T(n)={g(n)+T(n−1)+T(⌊δn⌋)f(n):n≥n0:n&lt;n0T(n)={g(n)+T(n−1)+T(⌊δn⌋):n≥n0f(n):n&lt;n0 T(n) = \left\{ \begin{array}{lr} g(n)+T(n-1) + T(\lfloor\delta n\rfloor ) & : n \ge n_0\\ f(n) & : n < n_0 \end{array} \right. สำหรับบางคนคง&lt;1 สมมติว่าเป็นพหุนามในอาจเป็นกำลังสอง ส่วนใหญ่มีแนวโน้มจะชี้แจงในn0&lt;δ&lt;10&lt;δ&lt;10 < \delta < 1gggnnnfffnnn เราจะวิเคราะห์ runtime ได้ยังไง(ยอดเยี่ยม) ทฤษฎีบทหลักและวิธี Akra-Bazzi ทั่วไปดูเหมือนจะไม่ได้นำมาใช้ΘΘ\Theta

4
ตัวอย่างของอัลกอริทึมที่คำสั่งต่ำมีอิทธิพลเหนือรันไทม์สำหรับการใช้งานจริงหรือไม่?
สัญกรณ์ Big-O ซ่อนปัจจัยที่คงที่ดังนั้นอัลกอริทึมตัวจึงไม่สามารถใช้ได้กับขนาดอินพุตที่เหมาะสมใด ๆ เนื่องจากสัมประสิทธิ์ของเทอมnนั้นมีขนาดใหญ่มากO(n)O(n)O(n)nnn จะมีผู้ใดขั้นตอนวิธีการที่รู้จักกันมี runtime คือแต่มีบางใบสั่งต่ำo ( F ( n ) )คำที่มีขนาดใหญ่เพื่อให้สำหรับการป้อนข้อมูลที่เหมาะสมขนาดมันสมบูรณ์ครอบงำรันไทม์? ฉันต้องการใช้อัลกอริทึมเช่นนี้เป็นตัวอย่างในหลักสูตรอัลกอริทึมเพราะมันให้เหตุผลที่ดีว่าทำไมสัญกรณ์ O-Big ไม่ใช่สิ่งใดเลยต( f( n ) )O(ฉ(n))O(f(n))o (f( n ) )โอ(ฉ(n))o(f(n)) ขอบคุณ!

3
ผลรวมของข้อกำหนดของ Landau กลับมาอีกครั้ง
ฉันถามคำถาม (เมล็ด) เกี่ยวกับผลรวมของเงื่อนไขของ Landau มาก่อนพยายามวัดอันตรายจากการใช้เครื่องหมาย asymptotics ในทางคณิตศาสตร์ด้วยความสำเร็จที่หลากหลาย ตอนนี้มากกว่าที่นี่กลับเป็นซ้ำกูรูของเราJeffEไม่เป็นหลักนี้: ∑i=1nΘ(1i)=Θ(Hn)∑i=1nΘ(1i)=Θ(Hn)\qquad \displaystyle \sum_{i=1}^n \Theta\left(\frac{1}{i}\right) = \Theta(H_n) ในขณะที่ผลลัพธ์สุดท้ายนั้นถูกต้องฉันคิดว่ามันผิด ทำไม? หากเราเพิ่มการมีอยู่ของค่าคงที่ทั้งหมด (เฉพาะขอบเขตบน) เราก็มี ∑i=1nci⋅1i≤c⋅Hn∑i=1nci⋅1i≤c⋅Hn\qquad \displaystyle \sum_{i=1}^n c_i \cdot \frac{1}{i} \leq c \cdot H_nH_n ตอนนี้เราจะคำนวณจากอย่างไร คำตอบคือฉันเชื่อว่าเราไม่สามารถ:ต้องผูกมัดสำหรับทั้งหมดแต่เราได้รับเพิ่มขึ้นเมื่อเติบโตขึ้น เราไม่รู้อะไรเกี่ยวกับพวกเขา อาจขึ้นอยู่กับเป็นอย่างมากดังนั้นเราจึงไม่สามารถคาดเดาขอบเขตได้:จำกัดอาจไม่มีอยู่จริงcccc1,…,cnc1,…,cnc_1, \dots, c_ncccnnn cicic_innncicic_iiiiccc นอกจากนี้ยังมีปัญหาที่ลึกซึ้งของตัวแปรนี้ที่จะไม่มีที่สิ้นสุดทางด้านซ้ายมือ -หรือ ? ทั้งสอง? ถ้า (เพื่อความเข้ากันได้) ความหมายของคืออะไรรู้ว่า ? ไม่เพียง แต่หมายถึง ? ถ้าเป็นเช่นนั้นเราไม่สามารถผูกพันผลรวมได้ดีกว่า(N)iiinnnnnnΘ(1/i)Θ(1/i)\Theta(1/i)1≤i≤n1≤i≤n1 \leq i …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.