Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Double-Array Build
Search
jojonki
November 20, 2019
Technology
0
7.2k
Double-Array Build
jojonki
November 20, 2019
Tweet
Share
More Decks by jojonki
See All by jojonki
Network Simplex
jojonki
0
2.8k
Visualizing Receptive Field
jojonki
0
140
Backpropagation Cheet Sheet
jojonki
0
170
Minimum Cost
jojonki
0
7.1k
Double-Array Search
jojonki
0
7.3k
Other Decks in Technology
See All in Technology
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
OpenShiftのBGPサポート - MetalLB+FRR-k8s編
orimanabu
0
130
Bakuraku Engineering Team Deck
layerx
PRO
10
2.8k
「え?!それ今ではHTMLだけでできるの!?」驚きの進化を遂げたモダンHTML
riyaamemiya
9
3.9k
Capture Checking / Separation Checking 入門
tanishiking
0
110
Symfony AI in Action
el_stoffel
2
330
Modern Data Stack大好きマンが語るSnowflakeの魅力
sagara
0
250
Kill the Vibe?Architecture in the age of AI
stoth
1
160
LangChain v1.0にトライ~ AIエージェントアプリの移行(v0.3 → v1.0) ~
happysamurai294
0
160
Active Directory 勉強会 第 6 回目 Active Directory セキュリティについて学ぶ回
eurekaberry
16
5.6k
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
1
520
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9.8k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
The Invisible Side of Design
smashingmag
302
51k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
119
20k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
370
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Agile that works and the tools we love
rasmusluckow
331
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
0 0 0 0 0 0 0 0 0 0
0 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc ߏஙͯ͠ΈΑ͏ʂ 0 0 7
0 0 0 0 0 0 0 0 0 0
0 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ base[1] >= 1ͷ݅Ͱɼ base[1]+code(a) == ະ༻index Λ୳͢ base0ະ༻Λද͢ͷͰ 1Ҏ্Ληοτ͢Δඞཁ͕͋Δ 0 0 7
1 0 0 0 0 0 0 0 0 0
0 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ base[1] == 1ͷ࣌ɼbase[1]+code(a) == 2 index 2ະ༻ͳͷͰOK! 0 0 7
1 0 0 0 0 0 0 0 0 0
0 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ index 1͕ભҠݩͳͷͰɼcheck[2]=1Ληοτ 0 0 7
1 0 0 0 0 0 0 0 0 0
0 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ aͷ࣍ऴจࣈ#Λొ͢Δ base[2] >= 1ͷ݅Ͱɼbase[2]+code(#) == ະ༻index Λ୳͢ 0 0 7
1 0 0 0 0 3 0 0 0 0
0 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ base[2] == 3ͷ࣌ɼbase[2]+code(#) == 3 index 3ະ༻ͳͷͰOK! 0 0 7
1 0 0 0 0 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ Index 2͕ભҠݩͳͷͰɼcheck[3]=2Ληοτ 0 0 7
1 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “a#”Λొʂ ऴจࣈΛొͨ͠ͷͰ baseΛ-1ʹͯ͠ऴྃ base0ະ༻index baseΛ-1ऴϊʔυΛҙຯ͢Δ 0 0 7
1 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[1]طʹηοτࡁΈͳͷͰ Index (base[1]+code(b))͕ະ༻or check͕ਖ਼͍͔͠νΣοΫ 0 0 7
1 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ check[3] != 1ͳͷͰବʂίϯϑϦΫτ͕ൃੜ… base[1]Γ͠ 0 0 7
1 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ index 1Λʹ࣋ͭϊʔυΛͯ͢୳͢ index 2͕֘ 0 0 7
1 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ 2 (index൪߸) - check[2] = 1 == code(a) ͭ·Γindex 2ɼindex 1͔ΒaΛొͨ͠ભҠ 0 0 7
0 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ ΑͬͯɼaͱbΛindex 1͔Βొ͢Δඞཁ͕͋Δ base[1]Λ·ͣ0Ϧηοτʂ aͷݩભҠઌޙͰ͏ͷͰ͓֮͑ͯ͘ 0 0 7
? 0 0 0 -1 3 0 0 0 0
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[1] >= 1ͷ݅Ͱɼbase[1]+code(a) ͱbase[1]+code(b)͕ ͍ͣΕະ༻ͳindexͱͳΔΛ୳͢ 0 0
3 0 0 0 -1 3 0 1 0 1
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[1] = 3ͱ͢Δͱɼa, b͍ͣΕొͰ͖ͦ͏ͩ bͷભҠ aͷભҠ 0 0 7
3 0 0 3 -1 3 0 1 0 1
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ a͕͚มΘͬͨͷͰɼݩભҠઌ͔ΒbaseΛίϐʔ aͷݩભҠઌ aͷ৽ભҠઌ 0 0 7
3 0 0 3 -1 3 0 1 0 1
2 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ aͷݩભҠઌΛʹ࣋ͭϊʔυΛͯ͢୳͢ index 3͕֘ aͷݩભҠઌ aͷ৽ભҠઌ 0 0 7
3 0 0 3 -1 3 0 1 0 1
4 1 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ aindex 4ʹҠͬͨͷͰɼ ϊʔυͷॴʢcheckʣΛ4ʹߋ৽ aͷݩભҠઌ aͷ৽ભҠઌ 0 0 7
3 0 0 3 -1 0 0 1 0 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ aͷݩભҠઌͷbaseͱcheck ৽ભҠઌʹҠߦͰ͖ͨͷͰϦηοτ ͜ΕͰίϯϑϦΫτΛղফͰ͖ͨ aͷݩભҠઌ aͷ৽ભҠઌ 0 0 7
3 0 0 3 -1 0 0 1 0 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ ొ࡞ۀʹΔ b·ͰొͰ͖͍ͯͨͷͰcΛొ bͷભҠઌ 0 0 7
3 0 0 3 -1 0 0 1 0 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[5] >= 1ͷ݅Ͱɼ base[5]+code(c) == ະ༻index Λ୳͢ 0 0 7
3 3 0 3 -1 0 0 1 0 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[5] == 3ͷ࣌ɼbase[5]+code(c) == 6 index 6ະ༻ͳͷͰOK! 0 0 7
3 3 0 3 -1 0 0 1 5 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ index 5͕ભҠݩͳͷͰɼcheck[6]=7Ληοτ 0 0 7
3 3 0 3 -1 0 0 1 5 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[6] >= 1ͷ݅Ͱɼ base[6]+code(#) == ະ༻index Λ୳͢ 0 0 7
3 3 7 3 -1 0 0 1 5 1
4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ base[6] == 7ͷ࣌ɼbase[6]+code(#) == 6 index 6ະ༻ͳͷͰOK! 0 0 7
6 3 3 7 3 -1 0 0 1 5
1 4 0 base check index 1 2 5 4 6 3 จࣈίʔυ #: 0 a: 1 b: 2 c: 3 ޠኮࣙॻ a bc “bc#”Λొʂ check[7]ʹભҠݩindex 6Ληοτ ऴจࣈͳͷͰbase[7]ʹ-1Ληοτͯ͠ऴྃ -1 7