C/C++ で学ぶアルゴリズム
探索、ソート、再帰、ビット演算を C と C++ で並べて実装します。
パスを始める →- レッスン チャレンジ 1 件 C・C++の線形探索 このレッスンでは、線形探索を使って、並べ替えられていない配列の中で値がある位置を見つけます。
- レッスン チャレンジ 1 件 C・C++の二分探索 このレッスンでは、Cの自作ループとC++のstd::lower_boundで、並べ替え済みの配列をO(log n)の時間で探索します。
- レッスン チャレンジ 1 件 C・C++のバブルソート(bubble sort) このレッスンでは、順番が逆になっている隣り合う要素の組を何度も入れ替えて、バブルソートを実装します。
- レッスン チャレンジ 1 件 C・C++のクイックソート(quick sort) このレッスンでは、基準となる要素(ピボット)のまわりで配列を分割して、クイックソートを実装します。
- レッスン チャレンジ 1 件 C・C++のマージソート(merge sort) このレッスンでは、常にO(n log n)の時間で動く、分割統治のマージソートを実装します。
- レッスン チャレンジ 2 件 C・C++の再帰と呼び出しスタック このレッスンでは、再帰関数で階乗を計算し、停止条件と再帰のメモリコストを理解します。
- レッスン チャレンジ 2 件 C・C++のビット操作 このレッスンでは、整数の各ビットを立てる、消す、反転する、調べる操作で、複数のオン・オフの状態を保存します。