คำถามติดแท็ก streaming-algorithm

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

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
การนับหมู่เกาะในเมทริกซ์บูลีน
ได้รับ n × mn×ม.n \times m บูลีนเมทริกซ์ XX\mathrm X, ปล่อย 000 รายการเป็นตัวแทนของทะเลและ 111รายการหมายถึงที่ดิน กำหนดเกาะเป็นแนวตั้งหรือแนวนอน (แต่ไม่ใช่แนวทแยงมุม) ที่อยู่ติดกัน111 รายการ. คำถามเดิมคือการนับจำนวนเกาะในเมทริกซ์ที่กำหนด ผู้เขียนอธิบายถึงวิธีแก้ปัญหาแบบเรียกซ้ำ (O (nm)O(nม.)\mathcal{O}(nm) หน่วยความจำ) แต่ฉันไม่ประสบความสำเร็จในการพยายามหาวิธีการสตรีม (จากซ้ายไปขวาและจากนั้นลงไปที่แถวถัดไป) โซลูชันที่นับเกาะแบบไดนามิกด้วย O (m)O(ม.)\mathcal{O}(m) หรือ O (n)O(n)\mathcal{O}(n) หรือ O (n+m)O(n+ม.)\mathcal{O}(n+m)หน่วยความจำ (ไม่มีข้อ จำกัด สำหรับความซับซ้อนของเวลา) เป็นไปได้ไหม ถ้าไม่ฉันจะพิสูจน์ได้อย่างไร ตัวอย่างของเอาต์พุตที่คาดไว้สำหรับอินพุตบางอย่างสำหรับcountฟังก์ชัน: c o u n t⎛⎝⎜010111010⎞⎠⎟= 1 ; c o u n …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.