คำถามติดแท็ก ds.data-structures

คุณสมบัติและการใช้งานของโครงสร้างข้อมูลเช่นขอบเขตพื้นที่ต่ำหรือความซับซ้อนของเวลาในการแทรกและลบวัตถุ

3
อัลกอริทึมที่ไม่สำคัญสำหรับการคำนวณค่ามัธยฐานหน้าต่างบานเลื่อน
ฉันต้องการคำนวณค่ามัธยฐานที่ทำงานอยู่: การป้อนข้อมูล: nnn ,เวกเตอร์x_n)k kk( x 1 , x 2 , … , x n )(x1,x2,…,xn)(x_1, x_2, \dotsc, x_n) เอาท์พุท:เวกเตอร์ที่เป็นค่ามัธยฐานของK-1})( ปี1 , ปี2 , ... , Y n - k + 1 ) (y1,y2,…,yn−k+1)(y_1, y_2, \dotsc, y_{n-k+1})Y ฉันyiy_i ( x ฉัน , x ฉัน+ 1 , ... , x ฉัน+ …

4
คู่มือโครงสร้างข้อมูลขั้นสูง
ฉันกำลังมองหาหนังสือเกี่ยวกับโครงสร้างข้อมูลขั้นสูงที่นอกเหนือไปจากที่ครอบคลุมในตำรามาตรฐานเช่น Cormen, Leiserson, Rivest และ Stein "Introduction to Algorithms" หนังสือที่สามารถใช้สำหรับการสอนหลักสูตรระดับบัณฑิตศึกษาเกี่ยวกับโครงสร้างข้อมูลขั้นสูงเช่น Erik Demaine และหลักสูตรโครงสร้างข้อมูลขั้นสูงของAndré Schulz ที่ MIT คู่มือสารานุกรมของโครงสร้างข้อมูลจะยิ่งดีกว่า

2
การค้นหาแบบไดนามิกขนาน
มีอะนาล็อกขนานตามธรรมชาติกับต้นไม้สีแดงดำที่มีคุณสมบัติคล้ายกันหรือแม้กระทั่งไม่เลวร้ายยิ่งกว่าสำหรับการอัปเดตในขณะที่ทำงานได้อย่างมีประสิทธิภาพพอสมควรหรือไม่? โดยทั่วไปแล้วสิ่งที่ดีที่สุดที่เราสามารถทำได้สำหรับการค้นหาแบบขนานพร้อมกับการอัปเดตคืออะไร

1
สแตกได้
มีความรู้อะไรเกี่ยวกับโครงสร้างข้อมูลที่สามารถรักษาลำดับของไอเท็มได้ภายใต้สองการดำเนินการต่อไปนี้? กด (x): เพิ่ม x ไปยังจุดสิ้นสุดของลำดับและส่งกลับตัวระบุสำหรับตำแหน่งในลำดับ แยก (S): กำหนดชุดตัวระบุที่ไม่เรียงลำดับเอารายการในตำแหน่งเหล่านั้นออกจากลำดับและส่งคืนรายการของรายการที่ถูกลบตามลำดับ หากคุณชอบคุณสามารถคิดว่านี่เป็นสแต็กหรือคิวที่มีการดำเนินการแยกที่แยกออกเป็นสองสแต็ค: การดำเนินการแยกสามารถนำมาใช้ในการดำเนินการป๊อปหรือ dequeue และวางลำดับของรายการที่แยกได้ กลับมาอีกครั้งในสแต็กหรือคิวที่แตกต่างกัน สิ่งที่ฉันรู้แล้ว: หนึ่งสามารถรักษาลำดับเป็นรายการเชื่อมโยงสองเท่าโดยที่แต่ละตัวระบุเป็นเพียงตัวชี้ไปยังรายการเชื่อมโยงโหนดและแต่ละโหนดยังเก็บหมายเลขตำแหน่งที่ช่วยให้การเปรียบเทียบอย่างรวดเร็วระหว่างตำแหน่งของสององค์ประกอบที่ไม่เกี่ยวข้อง ในลำดับ การอัปเดตหมายเลขตำแหน่งเป็นการยากที่โครงสร้างข้อมูลจะดำเนินการเพื่อให้เป็นจำนวนเต็มบวกทั้งหมดของค่าสูงสุดโดยที่nคือจำนวนรายการปัจจุบันในรายการ ด้วยโครงสร้างข้อมูลนี้ส่วนที่ยากเพียงอย่างเดียวของการแยกข้อมูลคือการเรียงลำดับรายการที่แยกตามหมายเลขตำแหน่ง การแยกรายการkใช้เวลาO ( k √O ( n )O(n)O(n)nnnkkkเวลาแบบสุ่มที่คาดไว้โดยใช้อัลกอริทึมการเรียงลำดับจำนวนเต็มของ Han และ Thorup จาก FOCS 2002 และการดำเนินการ push ต้องใช้เวลาคงที่O ( k บันทึกเข้าสู่ระบบk-------√)O(klog⁡log⁡k)O(k\sqrt{\log\log k}) สิ่งที่ฉันไม่รู้: เป็นไปได้ไหมที่จะจัดการกับสารสกัดในเวลาและผลักเวลาคงที่? มีวรรณกรรมเกี่ยวกับปัญหานี้หรือไม่? การเรียงลำดับจำนวนเต็มนั้นยากหรือไม่O ( k )O(k)O(k) แรงจูงใจ: นี่เป็นขั้นตอนพื้นฐานที่จำเป็นในการสั่งซื้อรายการในอัลกอริทึมการจัดตารางเวลา Coffman-Graham ซึ่งมีแอปพลิเคชันในการวาดกราฟ …

2
ค่าใช้จ่ายของ GC จะถูกเพิกเฉยเมื่อวิเคราะห์เวลาทำงานของโครงสร้างข้อมูลกรณีที่เลวร้ายที่สุดที่ระบุในภาษาการเขียนโปรแกรมที่เก็บขยะหรือไม่?
ฉันเพิ่งรู้ว่าฉันได้สมมติว่าคำตอบสำหรับคำถามของฉันคือ "ใช่" แต่ฉันไม่มีเหตุผลที่ดี ฉันคิดว่าอาจมีตัวเก็บขยะที่แนะนำการชะลอตัวของกรณีเลวร้ายที่สุดเท่านั้น มีการอ้างอิงที่ชัดเจนที่ฉันสามารถอ้างอิงได้หรือไม่? ในกรณีของฉันฉันกำลังทำงานกับโครงสร้างข้อมูลที่ใช้งานได้จริงและฉันใช้ Standard ML หากรายละเอียดเหล่านี้มีความสำคัญO(1)O(1)O(1) และบางทีคำถามนี้อาจมีความเกี่ยวข้องมากขึ้นเมื่อนำไปใช้กับโครงสร้างข้อมูลที่ระบุใน, พูด, Java? อาจมีการอภิปรายที่เกี่ยวข้องในตำราเรียนอัลกอริทึม / โครงสร้างข้อมูลที่ใช้ Java? (ฉันรู้ว่า Sedgewick มีรุ่น Java แต่ฉันสามารถเข้าถึงรุ่น C เท่านั้น)

6
อะนาล็อกของการตรวจจับการบีบอัด
ในการตรวจจับแบบบีบอัดเป้าหมายคือการค้นหาโครงร่างการบีบอัดเชิงเส้นสำหรับสัญญาณอินพุตขนาดใหญ่ที่ทราบว่ามีการกระจายแบบเบาบางเพื่อให้สัญญาณอินพุตสามารถกู้คืนได้อย่างมีประสิทธิภาพจากการบีบอัด ("ร่าง") การตั้งค่ามาตรฐานคือมีสัญญาณเวกเตอร์ที่และการแทนค่าการบีบอัดเท่ากับAxโดยที่AคือR - by จริง เมทริกซ์ที่เราต้องการr \ n ความมหัศจรรย์ของการตรวจจับที่ถูกบีบอัดคือใครสามารถสร้างAอย่างชัดเจนเพื่อให้สามารถกู้คืนได้อย่างรวดเร็ว (ใกล้เวลาเชิงเส้น) ของkใด ๆx∈Rnx∈Rnx \in \mathbb{R}^n∥x∥0&lt;k‖x‖0&lt;k\|x\|_0 < kR n R « n kAxAxAxAAARRRnnnR≪nR≪nR \ll nAAAkkk-sparse xxxกับRRRขนาดเล็กเป็นO(kno(1))O(kno(1))O(k n^{o(1)})(1)}) ฉันอาจไม่รู้จักพารามิเตอร์ที่ดีที่สุด แต่นี่เป็นแนวคิดทั่วไป คำถามของฉันคือ: มีปรากฏการณ์ที่คล้ายกันในการตั้งค่าอื่น ๆ ? สิ่งที่ฉันหมายถึงคือสัญญาณอินพุตอาจมาจาก "ตระกูลที่มีความซับซ้อนต่ำ" ตามการวัดความซับซ้อนที่ไม่จำเป็นต้องมีการกระจัดกระจาย จากนั้นเราต้องการอัลกอริธึมการบีบอัดและการบีบอัดไม่จำเป็นต้องเป็นแผนที่เชิงเส้นที่มีประสิทธิภาพและถูกต้อง ผลลัพธ์ดังกล่าวเป็นที่รู้จักกันในบริบทที่แตกต่างกันหรือไม่? สิ่งที่คุณคาดเดาสำหรับทฤษฎี "ทั่วไป" ที่มากขึ้นของการรับรู้แบบบีบอัด (แน่นอนในการประยุกต์ใช้การตรวจจับแบบกดความเป็นเชิงเส้นและการแยกเป็นประเด็นสำคัญคำถามที่ฉันถามที่นี่เป็น "ปรัชญา" มากกว่า)

1
เราจะไปถึงการคูณเชิงเส้นเพิ่มและเปรียบเทียบ (กับจำนวนเต็ม) ได้อย่างไร
ตามบทความของ KW Regan ว่า "เชื่อมต่อดวงดาว"เขากล่าวในตอนท้ายว่ามันยังคงเป็นปัญหาที่เปิดกว้างเพื่อค้นหาการแสดงจำนวนเต็มเช่นการดำเนินการเพิ่มการคูณและการเปรียบเทียบในเวลาเชิงเส้น: มีการแสดงจำนวนเต็มเพื่อให้การบวกการคูณและการเปรียบเทียบทั้งหมดทำได้ในเวลาเชิงเส้นหรือไม่? โดยทั่วไปมีเวลาเชิงเส้นสั่งซื้อเป็นแหวน discretely? (1) เราจะเข้าใกล้การคูณเวลาเชิงเส้นและการบวกโดยไม่เปรียบเทียบได้อย่างไร ที่นี่ฉันคิดว่าขนาดของปัญหาอาจแตกต่างกันไปดังนั้นเราอาจต้องการโครงสร้างข้อมูล / อัลกอริทึมที่ช่วยให้การเปลี่ยนขนาดจำนวนเต็ม (2) สำหรับปัญหาที่สมบูรณ์เราสามารถสรุปได้ว่าเราจะหารูปแบบที่เหมาะสมสำหรับการคูณเพิ่มและเปรียบเทียบจำนวนเต็ม เราจะสามารถทำให้การดำเนินการทั้งสามนี้ช้าที่สุด (ในกรณีที่เลวร้ายที่สุด) ในเวลาเชิงเส้นได้อย่างไร และในบันทึกนั้นการปฏิบัติการอื่นจะรวดเร็วแค่ไหน? งบปัญหาอย่างเป็นทางการ ในฐานะที่เอมิลJeřábekกล่าวถึงเราต้องการแยกแยะกรณีเล็ก ๆ น้อย ๆ และมุ่งเน้นไปที่พฤติกรรมกรณีที่เลวร้ายที่สุดสำหรับคำถามนี้ ดังนั้นเราจึงถามว่าสำหรับจำนวนเต็มไม่เป็นลบและ∀ yโดยที่0 ≤ x &lt; nและ0 ≤ y &lt; nเราสามารถหาโครงสร้างข้อมูล / อัลกอริทึมที่สามารถทำการบวกการคูณและเปรียบเทียบกับ \ ระหว่างxและyในเวลาO ( n log ( n ) )และพื้นที่O ( log 2 ( …

9
ซอฟต์แวร์ที่แนะนำสำหรับการวาดโครงสร้างข้อมูลเช่นกราฟและแผนภูมิคืออะไร?
เมื่อรวมผลลัพธ์เข้าด้วยกันมักจะต้องการไดอะแกรมที่ดูเป็นมืออาชีพมากกว่าที่จะใส่ไดอะแกรมใน MS Paint มาตรฐานสำหรับการวาดโครงสร้างข้อมูลคืออะไร?

1
เราจะคำนวณเซตการรวมกลุ่มของครอบครัวเซตได้เร็วแค่ไหน?
ได้รับชุดครอบครัวของส่วนย่อยของจักรวาลUให้และเราต้องการคำตอบคือs_2FF\mathcal{F}UUUS1,S2∈FS1,S2∈FS_1,S_2 \in \mathcal FS1⊆S2S1⊆S2S_1 \subseteq S_2 ฉันกำลังมองหาโครงสร้างข้อมูลที่จะช่วยให้ฉันตอบคำถามนี้ได้อย่างรวดเร็ว แอปพลิเคชันของฉันมาจากทฤษฎีกราฟที่ฉันต้องการดูว่าการลบจุดสุดยอดและละแวกนั้นออกจากจุดยอดที่แยกได้หรือไม่และสำหรับแต่ละจุดสุดยอดนั้นจะแยกจุดยอดที่แยกออกทั้งหมด ฉันต้องการสร้างโพสท่าที่สมบูรณ์หรือในที่สุดก็เป็นตารางที่จัดเก็บการบอกเท็จที่แท้จริงว่าเซตใดเป็นเซตย่อยของแต่ละคน|F|2|F|2|\mathcal{F}|^2 ให้,และ, สมมติว่าm=∑S∈F|S|m=∑S∈F|S|m = \sum_{S\in \mathcal{F}} |S|u=|U|u=|U|u = |U|n=|F|n=|F|n = |\mathcal{F}|u,n≤mu,n≤mu,n \leq m เราสามารถสร้างเมทริกซ์การบรรจุ (กราฟสองฝ่าย) ในเวลาและจากนั้นสามารถสร้างตารางของการเปรียบเทียบทั้งหมดในเวลาโดยสำหรับแต่ละชุด , ห่วงผ่านทุกองค์ประกอบของชุดอื่น ๆ ทั้งหมดและทำเครื่องหมายชุดที่จะไม่เซตของถ้าพวกเขาองค์ประกอบไม่ได้อยู่ในSรวมเวลาn×un×un \times uO(un)O(un)O(un)n2n2n^2O(nm)O(nm)O(nm)S∈FS∈FS \in \mathcal{F}SSSSSSO(nm)O(nm)O(nm) เราสามารถทำอะไรได้เร็วขึ้น? โดยเฉพาะเวลาเป็นไปได้หรือไม่?O((n+u)2)O((n+u)2)O((n+u)^2) ฉันพบบทความที่เกี่ยวข้อง: อัลกอริทึมย่อยแบบสองส่วนอย่างง่ายสำหรับการคำนวณลำดับย่อยบางส่วน (1995) ซึ่งให้อัลกอริทึมO(m2/log(m))O(m2/log(m))O(m^2 / log(m)) ลำดับย่อยบางส่วน: คอมพิวเตอร์และ Combinatoricsปรับปรุงด้านบนเล็กน้อย แต่ก็อ้างว่ากระดาษข้างต้นแก้ปัญหาในเวลาโดยที่คือจำนวนชุดสูงสุดที่ใช้องค์ประกอบร่วมกัน แต่ฉันไม่เข้าใจผลลัพธ์นี้O(md)O(md)O(md)ddd ในบทความระหว่างและO(nm)O(nm)O(nm)O(nα)O(nα)O(n^{\alpha})ผู้เขียนแสดงวิธีการในกราฟหาส่วนประกอบที่เชื่อมต่อหลังจากลบพื้นที่ใกล้เคียงปิดของจุดสุดยอดโดยใช้การคูณเมทริกซ์ นี้สามารถใช้ในการคำนวณ poset ชุดรวมโดยการหาส่วนประกอบทั้งหมดที่มี singletons …

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

5
ลดการใช้พื้นที่ของการเชื่อมต่อ st ด้วยหลายรอบหรือไม่
สมมติว่ากราฟมีจุดยอดแสดงเป็นสตรีมของขอบแต่อนุญาตให้ผ่านได้หลายครั้งผ่านกระแสn เมตรGGGnnnม.mm Monika Rauch Henzinger, Prabhakar Raghavan และ Sridar Rajagopalanตั้งข้อสังเกตว่ามีความจำเป็นที่จะต้องพิจารณาว่ามีช่องว่างระหว่างจุดสองจุดที่กำหนดในหรือไม่ถ้าอนุญาตผ่านข้อมูล (ดูที่เวอร์ชันรายงานทางเทคนิคด้วย) อย่างไรก็ตามจะไม่มีการจัดทำอัลกอริทึมเพื่อให้บรรลุข้อผูกพันนี้ ฉันคิดว่าอัลกอริทึมที่ดีที่สุดจริงจะใช้เวลาพื้นที่ในแบบจำลองคอมพิวเตอร์ที่สมจริงตั้งแต่หนึ่งที่มีการแยกแยะความแตกต่างจุดที่แตกต่างกันหากไม่สามารถหน่วยความจำดัชนีโดยใช้ตัวชี้ขนาดคงที่G k O ( ( nΩ(n/k)Ω(n/k)\Omega(n/k)GGGkkknO((nlogn)/k)O((nlogn)/k)O((n\, \log\, n)/k)nnn เราจะตัดสินใจเลือกการเชื่อมต่อกราฟที่มีผ่านโดยใช้พื้นที่อย่างไรO ( ( nkkkO((nlogn)/k)O((nlogn)/k)O((n\, \log\, n)/k) หากอนุญาตให้ส่งผ่านได้เพียงครั้งเดียวข้อมูลอินพุตสามารถจัดเก็บเป็นพาร์ติชันของชุดจุดยอดรวมชุดถ้าขอบถูกมองเห็นระหว่างจุดยอดในชุดต่าง ๆ ที่สอง สิ่งนี้ต้องมีพื้นที่มากที่สุดอย่างชัดเจน คำถามของฉันเกี่ยวกับ : เราจะใช้บัตรผ่านเพิ่มเติมเพื่อลดพื้นที่ที่ต้องการได้อย่างไรk &gt; 1O(nlogn)O(nlogn)O(n\, \log\, n)k&gt;1k&gt;1k > 1 (เพื่อหลีกเลี่ยงเรื่องไร้สาระเป็นพารามิเตอร์ที่ไม่สามารถ จำกัด ขอบเขตนิรนัยได้โดยค่าคงที่และขอบเขตของพื้นที่เป็นนิพจน์ที่เกี่ยวข้องกับฟังก์ชันของทั้งและ )n kkkknnnkkk อัปเดต: แม้แต่สำหรับมันจะมีประโยชน์มากที่จะมีวิธีเก็บเฉพาะจุดยอดหรือมีขอบเขตต่ำกว่าที่แข็งแกร่งกว่าสำหรับค่าคงที่โดยไม่คำนึงถึง ?n / 2 c …

2
โครงสร้างข้อมูลสำหรับพา ธ ที่สั้นที่สุด
ให้เป็นกราฟที่ไม่ได้บอกทิศทางโดยไม่มีขอบกับจุดยอดและขอบเป็นไปได้หรือไม่ที่จะประมวลผลล่วงหน้าและสร้างโครงสร้างข้อมูลขนาดเพื่อให้สามารถตอบแบบสอบถามในรูปแบบ "ระยะห่างระหว่างและ " ในเวลา O (n)?n m G m ⋅ p o l y l o g ( n ) u vGGGnnnmmmGGGm⋅polylog(n)m⋅polylog(n)m \cdot \mathrm{polylog}(n)uuuvvv ปัญหาดูเหมือนพื้นฐานเกินไปที่จะไม่ได้รับการแก้ไข

2
โครงสร้างข้อมูลสำหรับเคียวรีผลิตภัณฑ์จุดต่ำสุด
Rn\mathbb{R}^n⟨⋅,⋅⟩\langle \cdot, \cdot \ranglemmv1,v2,…,vmv_1, v_2, \ldots, v_mx∈Rnx \in \mathbb{R}^nต่ำสุดฉัน ⟨ x , v ฉัน ⟩ mini⟨x,vi⟩\min_i \langle x, v_i \rangleO ( n m )O(nm)O(nm) n = 2 n=2n = 2O ( บันทึก2 m )O(log2m)O(\log^2 m) สิ่งเดียวที่ฉันสามารถทำได้คือ มันเป็นผลที่ตามมาทันทีของจอห์นสัน - Lindenstrauss บทแทรกที่ทุก ๆε &gt; 0ε&gt;0\varepsilon > 0และการกระจายDD\mathcal{D}บนR nRn\mathbb{R}^nมีการทำแผนที่เชิงเส้นf : R n → …

2
การรักษาต้นไม้ที่ทอดข้ามที่สมดุลของกราฟที่ไม่มีทิศทางเพิ่มขึ้น
ฉันกำลังมองหาวิธีที่จะรักษาต้นไม้ที่ทอดข้ามค่อนข้างสมดุลของกราฟในขณะที่ฉันเพิ่มโหนด / ขอบใหม่ให้กับกราฟ ฉันมีกราฟที่ไม่มีทิศทางซึ่งเริ่มต้นเป็นโหนดเดียวคือ "รูท" ในแต่ละขั้นตอนฉันเพิ่มกราฟทั้งโหนดใหม่และขอบเชื่อมต่อกับกราฟหรือเพียงแค่ขอบใหม่เชื่อมต่อสองโหนดเก่า ในขณะที่ฉันเติบโตกราฟฉันคงต้นไม้ที่ทอดไว้ ส่วนใหญ่แล้วนี่หมายความว่าเมื่อฉันเพิ่มโหนดและขอบใหม่ฉันตั้งค่าโหนดใหม่ให้เป็นลูกของโหนดเก่าที่มันเชื่อมต่อกับ ฉันไม่สามารถควบคุมลำดับที่มีการเพิ่มโหนดใหม่ดังนั้นอัลกอริทึมการสร้างต้นไม้ด้านบนสามารถนำไปสู่ต้นไม้ที่ทอดได้อย่างสมดุล ไม่มีใครรู้เกี่ยวกับการวิเคราะห์พฤติกรรมออนไลน์ที่จะทำให้ต้นไม้ที่ทอด "ค่อนข้างสมดุล" ในขณะที่ลดจำนวนงานที่ทำในการทำทรีใหม่หรือไม่ ฉันสามารถควบคุมโครงสร้างต้นไม้ได้อย่างสมบูรณ์ สิ่งที่ฉันไม่ควบคุมคือการเชื่อมต่อกราฟหรือลำดับที่เพิ่มโหนดใหม่ โปรดทราบว่าคำตอบมาตรฐานของ Google สำหรับคำเช่น "สมดุล" "การขยาย" และ "ต้นไม้" ดูเหมือนจะเป็นต้นไม้ไบนารีและต้นไม้ B ซึ่งไม่มีผลบังคับใช้ โหนดกราฟของฉันสามารถมีจำนวนเพื่อนบ้านได้ดังนั้นโหนดต้นไม้สามารถมีจำนวนเด็ก ๆ ได้ไม่ใช่ 2 เหมือนต้นไม้ไบนารี B-trees รักษาสมดุลโดยการเปลี่ยนรายการ adjacency ของพวกเขาและฉันไม่สามารถเปลี่ยนการเชื่อมต่อกราฟ

5
เป็นไปได้ไหมที่จะทดสอบว่าตัวเลขที่คำนวณได้นั้นเป็นจำนวนตรรกยะหรือจำนวนเต็ม?
เป็นไปได้ไหมที่จะทดสอบอัลกอริธึมว่าจำนวนที่คำนวณได้เป็นจำนวนตรรกยะหรือจำนวนเต็ม? ในคำอื่น ๆ ก็จะมีความเป็นไปได้สำหรับห้องสมุดที่ใช้คำนวณตัวเลขเพื่อให้ฟังก์ชั่นisIntegerหรือisRational? ฉันเดาว่ามันเป็นไปไม่ได้และนี่ก็เกี่ยวข้องกับความจริงที่ว่ามันเป็นไปไม่ได้ที่จะทดสอบว่าตัวเลขสองตัวนั้นเท่ากัน แต่ฉันไม่เห็นวิธีที่จะพิสูจน์มัน แก้ไข: จำนวนที่คำนวณได้ถูกกำหนดโดยฟังก์ชันที่สามารถส่งกลับค่าประมาณด้วยเหตุผลด้วยความแม่นยำ :สำหรับใด ๆ0 รับฟังก์ชั่นดังกล่าวเป็นไปได้หรือไม่ที่จะทดสอบว่าหรือ ?xxxfx(ϵ)fx(ϵ)f_x(\epsilon)xxxϵϵ\epsilon|x−fx(ϵ)|≤ϵ|x−fx(ϵ)|≤ϵ|x - f_x(\epsilon)| \leq \epsilonϵ&gt;0ϵ&gt;0\epsilon > 0x∈Qx∈Qx \in \mathrm{Q}x∈Zx∈Zx \in \mathrm{Z}
18 computability  computing-over-reals  lambda-calculus  graph-theory  co.combinatorics  cc.complexity-theory  reference-request  graph-theory  proofs  np-complete  cc.complexity-theory  machine-learning  boolean-functions  combinatory-logic  boolean-formulas  reference-request  approximation-algorithms  optimization  cc.complexity-theory  co.combinatorics  permutations  cc.complexity-theory  cc.complexity-theory  ai.artificial-intel  p-vs-np  relativization  co.combinatorics  permutations  ds.algorithms  algebra  automata-theory  dfa  lo.logic  temporal-logic  linear-temporal-logic  circuit-complexity  lower-bounds  permanent  arithmetic-circuits  determinant  dc.parallel-comp  asymptotics  ds.algorithms  graph-theory  planar-graphs  physics  max-flow  max-flow-min-cut  fl.formal-languages  automata-theory  finite-model-theory  dfa  language-design  soft-question  machine-learning  linear-algebra  db.databases  arithmetic-circuits  ds.algorithms  machine-learning  ds.data-structures  tree  soft-question  security  project-topic  approximation-algorithms  linear-programming  primal-dual  reference-request  graph-theory  graph-algorithms  cr.crypto-security  quantum-computing  gr.group-theory  graph-theory  time-complexity  lower-bounds  matrices  sorting  asymptotics  approximation-algorithms  linear-algebra  matrices  max-cut  graph-theory  graph-algorithms  time-complexity  circuit-complexity  regular-language  graph-algorithms  approximation-algorithms  set-cover  clique  graph-theory  graph-algorithms  approximation-algorithms  clustering  partition-problem  time-complexity  turing-machines  term-rewriting-systems  cc.complexity-theory  time-complexity  nondeterminism 

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