Files
hello-algo/ja/docs/index.html

596 lines
34 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- Generated from the shared homepage template and locale configuration. -->
<link href="../assets/home/50aa7b2c8191c024/hero-motion.css" rel="stylesheet"/>
<noscript>
<style>
[data-home-src], video[data-home-poster], [data-hero-fallback] { display: none; }
</style>
</noscript>
<section class="home-div home-universe-bg" data-md-color-primary="grey" data-md-color-scheme="slate">
<div class="starfield">
<div class="starfield-origin">
</div>
</div>
<div class="hero-div hero-div--ja" data-home-layout="universe">
<img alt="" data-hero-asset="ground" data-source-height="380" data-source-width="881" height="380" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/567306c070a6a7e2/ground.webp" style="position: absolute; width: auto; height: 26.445%; left: 28.211%; top: 54.145%;; aspect-ratio: 881 / 380" width="881"/>
<img alt="" data-hero-asset="links" data-source-height="1134" data-source-width="1562" height="1134" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/3e50f38a325c1cb5/links.webp" style="position: absolute; width: auto; height: 78.751%; left: 10.545%; top: 7.326%;; aspect-ratio: 1562 / 1134" width="1562"/>
<a href="chapter_introduction/">
<img alt="" data-hero-asset="astronaut" data-source-height="672" data-source-width="515" height="672" src="../assets/home/50aa7b2c8191c024/../shared/images/8e5eb3b3e3ebd9f7/astronaut.webp" style="height: 46.673%; left: 35.413%; top: 24.343%;; aspect-ratio: 515 / 672" width="515"/>
<span style="left: 52.244%; top: 20.919%;">
アルゴリズムとの出会い
</span>
</a>
<a href="chapter_computational_complexity/">
<img alt="" data-hero-asset="chapter_computational_complexity" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/2fb425426d1f8d86/chapter_computational_complexity.webp" data-source-height="178" data-source-width="113" height="178" style="height: 12.347%; left: 36.267%; top: 37.653%;; aspect-ratio: 113 / 178" width="113"/>
<noscript>
<img alt="" height="178" src="../assets/home/50aa7b2c8191c024/../shared/images/2fb425426d1f8d86/chapter_computational_complexity.webp" style="height: 12.347%; left: 36.267%; top: 37.653%;" width="113"/>
</noscript>
<span style="left: 39.244%; top: 33.919%;">
計算量の解析
</span>
</a>
<a href="chapter_array_and_linkedlist/">
<img alt="" data-hero-asset="chapter_array_and_linkedlist" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/5cbbdf7be555d3ef/chapter_array_and_linkedlist.webp" data-source-height="319" data-source-width="468" height="319" style="height: 22.242%; left: 73.242%; top: 52.481%;; aspect-ratio: 468 / 319" width="468"/>
<noscript>
<img alt="" height="319" src="../assets/home/50aa7b2c8191c024/../shared/images/5cbbdf7be555d3ef/chapter_array_and_linkedlist.webp" style="height: 22.242%; left: 73.242%; top: 52.481%;" width="468"/>
</noscript>
<span style="left: 90.897%; top: 76.259%;">
配列と連結リスト
</span>
</a>
<a href="chapter_stack_and_queue/">
<img alt="" data-hero-asset="chapter_stack_and_queue" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/e2667767cf7481bd/chapter_stack_and_queue.webp" data-source-height="204" data-source-width="204" height="204" style="height: 14.302%; left: 62.646%; top: 77.875%;; aspect-ratio: 204 / 204" width="204"/>
<noscript>
<img alt="" height="204" src="../assets/home/50aa7b2c8191c024/../shared/images/e2667767cf7481bd/chapter_stack_and_queue.webp" style="height: 14.302%; left: 62.646%; top: 77.875%;" width="204"/>
</noscript>
<span style="left: 77.571%; top: 91.25%;">
スタックとキュー
</span>
</a>
<a href="chapter_hashing/">
<img alt="" data-hero-asset="chapter_hashing" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/b108d70a537714cb/chapter_hashing.webp" data-source-height="218" data-source-width="218" height="218" style="height: 15.266%; left: 63.281%; top: 27.933%;; aspect-ratio: 218 / 218" width="218"/>
<noscript>
<img alt="" height="218" src="../assets/home/50aa7b2c8191c024/../shared/images/b108d70a537714cb/chapter_hashing.webp" style="height: 15.266%; left: 63.281%; top: 27.933%;" width="218"/>
</noscript>
<span style="left: 68.862%; top: 46.292%;">
ハッシュテーブル
</span>
</a>
<a href="chapter_tree/">
<img alt="" data-hero-asset="chapter_tree" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/8138bb0acecedec4/chapter_tree.webp" data-source-height="281" data-source-width="280" height="281" style="height: 19.615%; left: 80.137%; top: 26.678%;; aspect-ratio: 280 / 281" width="280"/>
<noscript>
<img alt="" height="281" src="../assets/home/50aa7b2c8191c024/../shared/images/8138bb0acecedec4/chapter_tree.webp" style="height: 19.615%; left: 80.137%; top: 26.678%;" width="280"/>
</noscript>
<span style="left: 96.159%; top: 44.8%;">
木
</span>
</a>
<a href="chapter_heap/">
<img alt="" data-hero-asset="chapter_heap" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/7586281e6691807a/chapter_heap.webp" data-source-height="152" data-source-width="151" height="152" style="height: 10.566%; left: 77.226%; top: 11.559%;; aspect-ratio: 151 / 152" width="151"/>
<noscript>
<img alt="" height="152" src="../assets/home/50aa7b2c8191c024/../shared/images/7586281e6691807a/chapter_heap.webp" style="height: 10.566%; left: 77.226%; top: 11.559%;" width="151"/>
</noscript>
<span style="left: 88.103%; top: 15.422%;">
ヒープ
</span>
</a>
<a href="chapter_graph/">
<img alt="" data-hero-asset="chapter_graph" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/175a7f2e7c3cf5f0/chapter_graph.webp" data-source-height="272" data-source-width="542" height="272" style="height: 16.112%; left: 51.854%; top: 5.575%;; aspect-ratio: 542 / 272" width="542"/>
<noscript>
<img alt="" height="272" src="../assets/home/50aa7b2c8191c024/../shared/images/175a7f2e7c3cf5f0/chapter_graph.webp" style="height: 16.112%; left: 51.854%; top: 5.575%;" width="542"/>
</noscript>
<span style="left: 71.195%; top: 6.503%;">
グラフ
</span>
</a>
<a href="chapter_searching/">
<img alt="" data-hero-asset="chapter_searching" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/ebfe2b953dbb9d90/chapter_searching.webp" data-source-height="216" data-source-width="216" height="216" style="height: 15.149%; left: 18.185%; top: 16.404%;; aspect-ratio: 216 / 216" width="216"/>
<noscript>
<img alt="" height="216" src="../assets/home/50aa7b2c8191c024/../shared/images/ebfe2b953dbb9d90/chapter_searching.webp" style="height: 15.149%; left: 18.185%; top: 16.404%;" width="216"/>
</noscript>
<span style="left: 14.556%; top: 20.876%;">
探索
</span>
</a>
<a href="chapter_sorting/">
<img alt="" data-hero-asset="chapter_sorting" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/9d4be68b2680967c/chapter_sorting.webp" data-source-height="137" data-source-width="138" height="137" style="height: 9.574%; left: 25.409%; top: 40.747%;; aspect-ratio: 138 / 137" width="138"/>
<noscript>
<img alt="" height="137" src="../assets/home/50aa7b2c8191c024/../shared/images/9d4be68b2680967c/chapter_sorting.webp" style="height: 9.574%; left: 25.409%; top: 40.747%;" width="138"/>
</noscript>
<span style="left: 28.805%; top: 53.808%;">
ソート
</span>
</a>
<a href="chapter_divide_and_conquer/">
<img alt="" data-hero-asset="chapter_divide_and_conquer" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/6f5766ca9385cd2e/chapter_divide_and_conquer.webp" data-source-height="269" data-source-width="407" height="269" style="height: 18.681%; left: 32.721%; top: 4.816%;; aspect-ratio: 407 / 269" width="407"/>
<noscript>
<img alt="" height="269" src="../assets/home/50aa7b2c8191c024/../shared/images/6f5766ca9385cd2e/chapter_divide_and_conquer.webp" style="height: 18.681%; left: 32.721%; top: 4.816%;" width="407"/>
</noscript>
<span style="left: 31.42%; top: 8.679%;">
分割統治
</span>
</a>
<a href="chapter_backtracking/">
<img alt="" data-hero-asset="chapter_backtracking" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/176675e685febf11/chapter_backtracking.webp" data-source-height="249" data-source-width="345" height="249" style="height: 17.338%; left: 4.875%; top: 32.925%;; aspect-ratio: 345 / 249" width="345"/>
<noscript>
<img alt="" height="249" src="../assets/home/50aa7b2c8191c024/../shared/images/176675e685febf11/chapter_backtracking.webp" style="height: 17.338%; left: 4.875%; top: 32.925%;" width="345"/>
</noscript>
<span style="left: 4.742%; top: 50.113%;">
バックトラッキング
</span>
</a>
<a href="chapter_dynamic_programming/">
<img alt="" data-hero-asset="chapter_dynamic_programming" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/06264b1ffd05b08e/chapter_dynamic_programming.webp" data-source-height="268" data-source-width="267" height="268" style="height: 15.47%; left: 9.406%; top: 57.472%;; aspect-ratio: 267 / 268" width="267"/>
<noscript>
<img alt="" height="268" src="../assets/home/50aa7b2c8191c024/../shared/images/06264b1ffd05b08e/chapter_dynamic_programming.webp" style="height: 15.47%; left: 9.406%; top: 57.472%;" width="267"/>
</noscript>
<span style="left: 8.561%; top: 75.351%;">
動的計画法
</span>
</a>
<a href="chapter_greedy/">
<img alt="" data-hero-asset="chapter_greedy" data-hero-fallback="../assets/home/50aa7b2c8191c024/../shared/images/2ce6caaac951c40b/chapter_greedy.webp" data-source-height="202" data-source-width="265" height="202" style="height: 14.127%; left: 23.132%; top: 75.803%;; aspect-ratio: 265 / 202" width="265"/>
<noscript>
<img alt="" height="202" src="../assets/home/50aa7b2c8191c024/../shared/images/2ce6caaac951c40b/chapter_greedy.webp" style="height: 14.127%; left: 23.132%; top: 75.803%;" width="265"/>
</noscript>
<span style="left: 21.619%; top: 86.85%;">
貪欲法
</span>
</a>
</div>
<div class="heading-div">
<img alt="" loading="lazy" src="https://readme-typing-svg.demolab.com/?font=Noto+Sans+JP&amp;weight=400&amp;duration=3500&amp;pause=2000&amp;color=FFF&amp;center=true&amp;vCenter=true&amp;random=false&amp;width=200&amp;lines=Hello%2C+Algo+!" style="height: min(9vh, 12vw);"/>
<div>
<p style="margin-top: max(-1vh, -2vw); margin-bottom: min(2vh, 3.5vw);">
アニメーションによる図解とワンクリックで実行できるコードで学ぶ、データ構造とアルゴリズムの入門書
</p>
<a class="rounded-button" href="chapter_hello_algo/">
<svg viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg">
<!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->
<path d="M160 96a96 96 0 1 1 192 0A96 96 0 1 1 160 96zm80 152V512l-48.4-24.2c-20.9-10.4-43.5-17-66.8-19.3l-96-9.6C12.5 457.2 0 443.5 0 427V224c0-17.7 14.3-32 32-32H62.3c63.6 0 125.6 19.6 177.7 56zm32 264V248c52.1-36.4 114.1-56 177.7-56H480c17.7 0 32 14.3 32 32V427c0 16.4-12.5 30.2-28.8 31.8l-96 9.6c-23.2 2.3-45.9 8.9-66.8 19.3L272 512z">
</path>
</svg>
<span>
読み始める
</span>
</a>
<a class="rounded-button" href="https://github.com/krahets/hello-algo">
<svg viewbox="0 0 496 512" xmlns="http://www.w3.org/2000/svg">
<path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z">
</path>
</svg>
<span>
GitHub
</span>
</a>
</div>
<div style="text-align: center; margin-top: min(2.5vh, 3.5vw);">
<svg fill="var(--md-default-fg-color)" height="2vh" viewbox="0 0 384 512" xmlns="http://www.w3.org/2000/svg">
<path d="M169.4 470.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 370.8 224 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 306.7L54.6 265.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z">
</path>
</svg>
</div>
</div>
</section>
<section class="home-div" data-md-color-primary="grey" data-md-color-scheme="slate">
<div class="section-content">
<div class="reading-media">
<div class="media-block">
<a href="chapter_hello_algo/">
<div style="height: 4.34%;">
</div>
<img alt="" class="device-on-hover" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/5b64cf7672ec5ec6/web_mac_iphone.webp" decoding="async" height="965" style="height: 66.31%;" width="1598"/>
<noscript>
<img alt="" class="device-on-hover" height="965" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/5b64cf7672ec5ec6/web_mac_iphone.webp" style="height: 66.31%;" width="1598"/>
</noscript>
<div style="height: 4.34%;">
</div>
<div class="text-button">
<span>
オンラインで読む
</span>
<svg viewbox="0 0 320 512" xmlns="http://www.w3.org/2000/svg">
<path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z">
</path>
</svg>
</div>
</a>
</div>
<div class="media-block">
<a href="https://github.com/krahets/hello-algo/releases">
<img alt="" class="device-on-hover" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/66baa2f9bf3abec7/pdf_ipad.webp" decoding="async" height="960" style="height: 75%;" width="812"/>
<noscript>
<img alt="" class="device-on-hover" height="960" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/66baa2f9bf3abec7/pdf_ipad.webp" style="height: 75%;" width="812"/>
</noscript>
<div class="text-button">
<span>
既存の PDF/EPUB を確認
</span>
<svg viewbox="0 0 320 512" xmlns="http://www.w3.org/2000/svg">
<path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z">
</path>
</svg>
</div>
</a>
</div>
</div>
<p style="">
日本語版はオンラインで公開しています。ダウンロード先には既存の各言語版が掲載されており、今回の公開に伴う新たな日本語 PDF/EPUB の配布はありません。
</p>
<p style="margin-top: 2em;">
500 点のアニメーション図解、14 種類のプログラミング言語のコード、コミュニティでの 3000 件の質問と回答が、データ構造とアルゴリズムの入門を支えます。
</p>
</div>
</section>
<section class="home-div" data-md-color-primary="grey" data-md-color-scheme="slate">
<div class="section-content">
<h3 style="text-align: center; margin: 1em auto;">
推薦の言葉
</h3>
<div class="intro-container endor-container">
<div class="intro-text endor-text">
<p style="margin-bottom: 0;">
「手を動かし、考えながら学べる、わかりやすいデータ構造とアルゴリズムの入門書です。アルゴリズムを初めて学ぶ方に、ぜひおすすめします。」
</p>
<p style="font-weight: bold;">
—— 邓俊辉、清華大学コンピュータ科学系教授
</p>
</div>
<div class="intro-text endor-text">
<p style="margin-bottom: 0;">
「私がデータ構造とアルゴリズムを学んでいた頃に『Hello Algo』があれば、学ぶのが 10 倍楽になっていたでしょう!」
</p>
<p style="font-weight: bold;">
—— 李沐、Amazon シニア・プリンシパル・サイエンティスト
</p>
</div>
</div>
</div>
</section>
<section class="home-div" data-md-color-primary="grey" data-md-color-scheme="slate">
<div class="section-content">
<div class="intro-container">
<div class="intro-text">
<div>
<div style="display: flex; align-items: center;">
<svg height="1.5em" viewbox="0 0 640 512" width="1.5em" xmlns="http://www.w3.org/2000/svg">
<path d="M256 0H576c35.3 0 64 28.7 64 64V288c0 35.3-28.7 64-64 64H256c-35.3 0-64-28.7-64-64V64c0-35.3 28.7-64 64-64zM476 106.7C471.5 100 464 96 456 96s-15.5 4-20 10.7l-56 84L362.7 169c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6h80 48H552c8.9 0 17-4.9 21.2-12.7s3.7-17.3-1.2-24.6l-96-144zM336 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM64 128h96V384v32c0 17.7 14.3 32 32 32H320c17.7 0 32-14.3 32-32V384H512v64c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V192c0-35.3 28.7-64 64-64zm8 64c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16H72zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V312c0-8.8-7.2-16-16-16H72zm0 104c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16H88c8.8 0 16-7.2 16-16V416c0-8.8-7.2-16-16-16H72zm336 16v16c0 8.8 7.2 16 16 16h16c8.8 0 16-7.2 16-16V416c0-8.8-7.2-16-16-16H424c-8.8 0-16 7.2-16 16z" fill="var(--md-primary-bg-color)">
</path>
</svg>
<h3 style="margin-left: 0.5em;">
アニメーションによる図解
</h3>
</div>
<p style="margin: 0;">
わかりやすい内容で、無理なく学べます
</p>
<p class="intro-quote">
"A picture is worth a thousand words."
<br/>
「一枚の図は千の言葉に勝る」
</p>
</div>
</div>
<video aria-label="アルゴリズムの動きを示すアニメーション" class="intro-image" data-home-poster="../assets/home/50aa7b2c8191c024/../shared/images/9e5f39bf33afc70f/animation-poster.webp" data-home-video="../assets/home/50aa7b2c8191c024/../shared/media/6c70de2b2bf4eef7/animation.mp4" height="1080" loop="" muted="" playsinline="" preload="none" style="aspect-ratio: 1600 / 1080" width="1600">
</video>
<noscript>
<a href="../assets/home/50aa7b2c8191c024/../shared/media/6c70de2b2bf4eef7/animation.mp4">
<img alt="アルゴリズムの動きを示すアニメーション" class="intro-image" height="1080" src="../assets/home/50aa7b2c8191c024/../shared/images/9e5f39bf33afc70f/animation-poster.webp" width="1600"/>
アニメーションによる図解
</a>
</noscript>
</div>
<div class="intro-container">
<video aria-label="コードを実行する例" class="intro-image" data-home-poster="../assets/home/50aa7b2c8191c024/../shared/images/f33a13e8331245ae/running_code-poster.webp" data-home-video="../assets/home/50aa7b2c8191c024/../shared/media/bb169a96ca8316da/running_code.mp4" height="1082" loop="" muted="" playsinline="" preload="none" style="aspect-ratio: 1600 / 1082" width="1600">
</video>
<noscript>
<a href="../assets/home/50aa7b2c8191c024/../shared/media/bb169a96ca8316da/running_code.mp4">
<img alt="コードを実行する例" class="intro-image" height="1082" src="../assets/home/50aa7b2c8191c024/../shared/images/f33a13e8331245ae/running_code-poster.webp" width="1600"/>
ワンクリックで実行
</a>
</noscript>
<div class="intro-text">
<div>
<div style="display: flex; align-items: center;">
<svg height="1.5em" viewbox="0 0 640 512" width="1.5em" xmlns="http://www.w3.org/2000/svg">
<path d="M392.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm80.6 120.1c-12.5 12.5-12.5 32.8 0 45.3L562.7 256l-89.4 89.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0zm-306.7 0c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l112 112c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256l89.4-89.4c12.5-12.5 12.5-32.8 0-45.3z" fill="var(--md-primary-bg-color)">
</path>
</svg>
<h3 style="margin-left: 0.5em;">
ワンクリックで実行
</h3>
</div>
<p style="margin: 0;">
十数種類のプログラミング言語に対応し、コードの実行を可視化できます
</p>
<p class="intro-quote">
"Talk is cheap. Show me the code."
<br/>
「口で語るより、コードを見せよう」
</p>
</div>
</div>
</div>
<div class="intro-container">
<div class="intro-text">
<div>
<div style="display: flex; align-items: center;">
<svg height="1.5em" viewbox="0 0 640 512" width="1.5em" xmlns="http://www.w3.org/2000/svg">
<path d="M88.2 309.1c9.8-18.3 6.8-40.8-7.5-55.8C59.4 230.9 48 204 48 176c0-63.5 63.8-128 160-128s160 64.5 160 128s-63.8 128-160 128c-13.1 0-25.8-1.3-37.8-3.6c-10.4-2-21.2-.6-30.7 4.2c-4.1 2.1-8.3 4.1-12.6 6c-16 7.2-32.9 13.5-49.9 18c2.8-4.6 5.4-9.1 7.9-13.6c1.1-1.9 2.2-3.9 3.2-5.9zM0 176c0 41.8 17.2 80.1 45.9 110.3c-.9 1.7-1.9 3.5-2.8 5.1c-10.3 18.4-22.3 36.5-36.6 52.1c-6.6 7-8.3 17.2-4.6 25.9C5.8 378.3 14.4 384 24 384c43 0 86.5-13.3 122.7-29.7c4.8-2.2 9.6-4.5 14.2-6.8c15.1 3 30.9 4.5 47.1 4.5c114.9 0 208-78.8 208-176S322.9 0 208 0S0 78.8 0 176zM432 480c16.2 0 31.9-1.6 47.1-4.5c4.6 2.3 9.4 4.6 14.2 6.8C529.5 498.7 573 512 616 512c9.6 0 18.2-5.7 22-14.5c3.8-8.8 2-19-4.6-25.9c-14.2-15.6-26.2-33.7-36.6-52.1c-.9-1.7-1.9-3.4-2.8-5.1C622.8 384.1 640 345.8 640 304c0-94.4-87.9-171.5-198.2-175.8c4.1 15.2 6.2 31.2 6.2 47.8l0 .6c87.2 6.7 144 67.5 144 127.4c0 28-11.4 54.9-32.7 77.2c-14.3 15-17.3 37.6-7.5 55.8c1.1 2 2.2 4 3.2 5.9c2.5 4.5 5.2 9 7.9 13.6c-17-4.5-33.9-10.7-49.9-18c-4.3-1.9-8.5-3.9-12.6-6c-9.5-4.8-20.3-6.2-30.7-4.2c-12.1 2.4-24.7 3.6-37.8 3.6c-61.7 0-110-26.5-136.8-62.3c-16 5.4-32.8 9.4-50 11.8C279 439.8 350 480 432 480z" fill="var(--md-primary-bg-color)">
</path>
</svg>
<h3 style="margin-left: 0.5em;">
読者同士で学び合う
</h3>
</div>
<p style="margin: 0;">
質問や意見を交わし、読者同士で一緒に理解を深めましょう
</p>
<p class="intro-quote">
"Learning by teaching."
<br/>
「教えることも、学びにつながる」
</p>
</div>
</div>
<video aria-label="コメントで学び合う例" class="intro-image" data-home-poster="../assets/home/50aa7b2c8191c024/../shared/images/f9ac69536a7582f5/comment-poster.webp" data-home-video="../assets/home/50aa7b2c8191c024/../shared/media/62aa0b8d351c63a7/comment.mp4" height="1080" loop="" muted="" playsinline="" preload="none" style="aspect-ratio: 1600 / 1080" width="1600">
</video>
<noscript>
<a href="../assets/home/50aa7b2c8191c024/../shared/media/62aa0b8d351c63a7/comment.mp4">
<img alt="コメントで学び合う例" class="intro-image" height="1080" src="../assets/home/50aa7b2c8191c024/../shared/images/f9ac69536a7582f5/comment-poster.webp" width="1600"/>
読者同士で学び合う
</a>
</noscript>
</div>
</div>
</section>
<section class="home-div" data-md-color-primary="grey" data-md-color-scheme="slate">
<div class="section-content" style="max-width: 90vw;">
<div style="margin: 2em auto;">
<h3>
著者
</h3>
<div class="profile-div">
<div class="profile-cell">
<a href="https://github.com/krahets">
<img alt="著者:yudongjin" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/02348410d40f7665/avatar_yudongjin.webp" decoding="async" height="512" width="512"/>
<noscript>
<img alt="著者:yudongjin" class="profile-img" height="512" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/02348410d40f7665/avatar_yudongjin.webp" width="512"/>
</noscript>
<br/>
<b>
靳宇栋(@krahets)
</b>
</a>
</div>
</div>
</div>
<div style="margin: 2em auto;">
<h3>
コードのレビュー担当者
</h3>
<p>
原書のさまざまな言語によるコードは、次の開発者の協力によって作られました。その尽力と貢献に感謝します!
</p>
<div class="profile-div">
<div class="profile-cell">
<a href="https://github.com/coderonion">
<img alt="コードのレビュー担当者:coderonion" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/db606f27971eae34/avatar_coderonion.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:coderonion" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/db606f27971eae34/avatar_coderonion.webp" width="384"/>
</noscript>
<br/>
<b>
coderonion
</b>
<br/>
<sub>
Zig, Rust
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/curtishd">
<img alt="コードのレビュー担当者:curtishd" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/feedb0e547ea31fc/avatar_curtishd.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:curtishd" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/feedb0e547ea31fc/avatar_curtishd.webp" width="384"/>
</noscript>
<br/>
<b>
curtishd
</b>
<br/>
<sub>
Kotlin
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/Gonglja">
<img alt="コードのレビュー担当者:Gonglja" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/cdcf023b032b8d30/avatar_Gonglja.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:Gonglja" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/cdcf023b032b8d30/avatar_Gonglja.webp" width="384"/>
</noscript>
<br/>
<b>
Gonglja
</b>
<br/>
<sub>
C, C++
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/gvenusleo">
<img alt="コードのレビュー担当者:gvenusleo" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/464e2d351b9263ec/avatar_gvenusleo.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:gvenusleo" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/464e2d351b9263ec/avatar_gvenusleo.webp" width="384"/>
</noscript>
<br/>
<b>
gvenusleo
</b>
<br/>
<sub>
Dart
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/hpstory">
<img alt="コードのレビュー担当者:hpstory" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/7b6478acdab6b845/avatar_hpstory.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:hpstory" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/7b6478acdab6b845/avatar_hpstory.webp" width="384"/>
</noscript>
<br/>
<b>
hpstory
</b>
<br/>
<sub>
C#
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/justin-tse">
<img alt="コードのレビュー担当者:justin-tse" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/208ee5aae490eefa/avatar_justin-tse.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:justin-tse" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/208ee5aae490eefa/avatar_justin-tse.webp" width="384"/>
</noscript>
<br/>
<b>
justin-tse
</b>
<br/>
<sub>
JS, TS
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/khoaxuantu">
<img alt="コードのレビュー担当者:khoaxuantu" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/9d3f1a21ff51de78/avatar_khoaxuantu.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:khoaxuantu" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/9d3f1a21ff51de78/avatar_khoaxuantu.webp" width="384"/>
</noscript>
<br/>
<b>
khoaxuantu
</b>
<br/>
<sub>
Ruby
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/krahets">
<img alt="コードのレビュー担当者:krahets" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/e321f9a3ac2739e0/avatar_krahets.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:krahets" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/e321f9a3ac2739e0/avatar_krahets.webp" width="384"/>
</noscript>
<br/>
<b>
krahets
</b>
<br/>
<sub>
Python, Java
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/night-cruise">
<img alt="コードのレビュー担当者:night-cruise" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/960b489efa22abd4/avatar_night-cruise.jpg" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:night-cruise" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/960b489efa22abd4/avatar_night-cruise.jpg" width="384"/>
</noscript>
<br/>
<b>
night-cruise
</b>
<br/>
<sub>
Rust
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/nuomi1">
<img alt="コードのレビュー担当者:nuomi1" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/7316a9eb4429b259/avatar_nuomi1.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:nuomi1" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/7316a9eb4429b259/avatar_nuomi1.webp" width="384"/>
</noscript>
<br/>
<b>
nuomi1
</b>
<br/>
<sub>
Swift
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/Reanon">
<img alt="コードのレビュー担当者:Reanon" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/dcc15aa68cc793c7/avatar_Reanon.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:Reanon" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/dcc15aa68cc793c7/avatar_Reanon.webp" width="384"/>
</noscript>
<br/>
<b>
Reanon
</b>
<br/>
<sub>
Go, C
</sub>
</a>
</div>
<div class="profile-cell">
<a href="https://github.com/rongyi">
<img alt="コードのレビュー担当者:rongyi" class="profile-img" data-home-src="../assets/home/50aa7b2c8191c024/../shared/images/5dc6c4b1d8bfe0ac/avatar_rongyi.webp" decoding="async" height="384" width="384"/>
<noscript>
<img alt="コードのレビュー担当者:rongyi" class="profile-img" height="384" loading="lazy" src="../assets/home/50aa7b2c8191c024/../shared/images/5dc6c4b1d8bfe0ac/avatar_rongyi.webp" width="384"/>
</noscript>
<br/>
<b>
rongyi
</b>
<br/>
<sub>
Rust
</sub>
</a>
</div>
</div>
</div>
<div style="margin: 2em auto;">
<h3>
貢献者
</h3>
<p>
本書は、オープンソースコミュニティの 200 人以上の貢献者の協力により、改善を重ねています。時間と労力を注いでくださった皆さんに感謝します!
</p>
<a href="https://github.com/krahets/hello-algo/graphs/contributors">
<img alt="貢献者の皆さん" data-home-src="https://contrib.rocks/image?repo=krahets/hello-algo&amp;max=300&amp;columns=12" decoding="async" style="width: 100%; max-width: 38.5em;"/>
<noscript>
<img alt="貢献者の皆さん" loading="lazy" src="https://contrib.rocks/image?repo=krahets/hello-algo&amp;max=300&amp;columns=12" style="width: 100%; max-width: 38.5em;"/>
</noscript>
</a>
</div>
</div>
</section>
<!-- This independent fallback also works when the deferred loader cannot be fetched. -->
<script defer="" onerror="document.querySelectorAll('[data-home-src], [data-home-poster]').forEach(function(el) { if (el.dataset.homeSrc) el.src = el.dataset.homeSrc; if (el.dataset.homePoster) el.poster = el.dataset.homePoster; });" src="../assets/home/50aa7b2c8191c024/javascripts/homepage-media.js">
</script>
<script>
// If the scene entry point itself fails, still provide chapter illustrations.
addEventListener('load', function () {
if (!window.Starfield) document.querySelectorAll('[data-hero-fallback]').forEach(function (image) {
image.src = image.dataset.heroFallback;
});
}, {once: true});
</script>