paiza times

paizaがお届けする、テック・キャリア・マネジメント領域における「今必要な情報」を届けるWebメディア

logo

paizaがお届けする、テック・キャリア・マネジメント領域の「今必要な情報」を届けるWebメディア

アルゴリズムとデータ構造入門に新講座追加 | 初心者でも二分探索を理解できる

paizaラーニング新・アルゴリズムとデータ構造入門 Java編に「新・アルゴリズムとデータ構造入門 Java編9: 二分探索」が追加されました。

新・アルゴリズムとデータ構造入門 Java編では、初心者でも動画レッスンと演習問題を通して、線形探索やO記法、ソートなどのアルゴリズムが学べます。

今回は、新・アルゴリズムとデータ構造入門 Java編9: 二分探索の内容をご紹介します。

paizaラーニングについて詳しくはこちら
paizaラーニング

二分探索について

二分探索は、まず探索範囲の右端と左端を変数で持ち、中央の値で条件を判定して、結果に応じて右端か左端の値を更新していくアルゴリズムです。

例えば、「100階建てのビルの何階までなら卵を落としても割れないか」について調べるとしましょう。

この場合、50階から卵を落とせば

  • 割れなかった場合:50階より下の階では必ず割れない
  • 割れた場合:50階より上の階では必ず割れる

となるため、残りの半分だけ探索すればよいということになります。

このように、範囲を半々に狭めながら探索していくのが二分探索です。

詳しい使い方は、新・アルゴリズムとデータ構造入門 Java編9: 二分探索で解説しています。

新・アルゴリズムとデータ構造入門 Java編に追加されたレッスンの内容

新・アルゴリズムとデータ構造入門 Java編9: 二分探索


01:二分探索

まずは、さまざまな処理を高速化するアルゴリズム「二分探索」の概要を学びます。

02:x 以上の個数

レベルアップ問題集「二分探索メニュー」の「lower_bound」を通して、テストに合格する生徒数の求め方を学びます。

03:範囲に含まれる個数

レベルアップ問題集「二分探索メニュー」の「ある範囲に含まれている整数の個数」を通して、特定の範囲に含まれる個数の求め方を学びます。

04:最大値を求める

レベルアップ問題集「二分探索メニュー」の「パイプを切り出そう」を通して、最大値の求め方を学びます。

05:平均の最大化

レベルアップ問題集「二分探索メニュー」の「効率よく盗もう」を通して、平均値を最大化する方法を学びます。

06:最小値の最大化

レベルアップ問題集「二分探索メニュー」の「太巻きを分けよう」を通して、最小値を最大化する方法を学びます。

07:数列の k 番目

レベルアップ問題集「二分探索メニュー」の「長い長い数列」を通して、数列の k 番目に来る値の求め方を学びます。

そのほか初心者でもアルゴリズムを学べるコンテンツ

スキルチェック問題

paizaでは、Java・PHP・Ruby・Python・C・C++・C#・JavaScriptなど、さまざまなプログラミング言語に対応したスキルチェック問題を公開しています。

問題を解くにはさまざまなアルゴリズムが必要となるため、初心者のアルゴリズム学習にも役立ちます。

paizaのスキルチェック

レベルアップ問題集

20211201105847

プログラミングの練習問題を集めた「レベルアップ問題集」も公開しています。

ソート、線形探索、木やグラフなどのアルゴリズムを試せる問題が多数あるため、さまざまなアルゴリズムの練習ができます。

paizaラーニングのアルゴリズム入門編

paizaラーニングの「アルゴリズム入門編」では、FizzBuzz、フィボナッチ数やハノイの塔といった、就職・転職時の技術面接でよく出るプログラミング問題のアルゴリズムを解説しています。

paizaラーニング





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

paizaのおすすめコンテンツ

PPG proken プログラミングゲーム「初恋 プログラミング研究会〜海に行こうよ〜」 PPG Bingo プログラミングゲーム「コードレビューBINGO!!」
paiza転職 paiza新卒 EN:TRY paizaラーニング 記事内に記載している情報は、記事公開時点でのものとなります。 Copyright Paiza, Inc, All rights reserved.