ポインタと参照の基礎
ポインタの基本演算子
C++におけるポインタには2つの主要な演算子があります:
*(間接参照演算子):ポインタに適用すると、そのポインタが指すアドレスに格納されている値を取得します。
&(アドレス演算子):変数に適用すると、その変数のメモリアドレスを取得します。
ポインタ自体も変数であるため、ポインタのアドレスを取得することも可能です。このアドレス ...
6月9日 00:28 投稿
データ構造:線形リスト
問題3156 【基礎15.例題1】生徒番号の照会
問題概要
最大2×106人の生徒が教室に入っており、それぞれの生徒番号(1〜109の範囲)が教室に入った順序で与えられる。その後、最大105回にわたって、何番目に教室に入ったかを尋ねる質問が行われる。各質問に対する答えを出力する必要がある。
入力形式
n m
s1 s2 ... sn
q1 q2 ... qm
nは生徒数、mは質問の回数を表す。siはi番 ...
6月8日 22:54 投稿
LeetCodeの代表的なアルゴリズム問題とその解答
LeetCodeの代表的なアルゴリズム問題とそのC++による実装をまとめました。文字列、配列、連結リスト、動的計画法などのトピックを取り上げ、アルゴリズム面接準備や日頃の練習に役立ちます。
目次
文字列処理
配列問題
連結リスト操作
動的計画法
木の走査
1. 文字列処理
1.1 二進数の部分文字列を数える(Count Binary Substrings)
問題説明:与えられた文字列において ...
6月2日 16:49 投稿
Java Arrays.asListが引き起こす3つの典型的な問題
問題1:プリミティブ型配列をリストに変換する際の落とし穴
Arrays.asList()メソッドはジェネリックメソッドであり、その引数はオブジェクトの配列(T[])を期待しています。しかし、Javaのプリミティブ型(int, doubleなど)はオブジェクトではありません。そのため、プリミティブ型の配列をこのメソッドに渡すと、配列全体が単一の要素として扱われてしまいます。
public ...
6月1日 18:33 投稿
C言語における配列操作とアルゴリズムの基礎実装
C言語における配列のメモリレイアウトの理解から、ソートアルゴリズム、進数変換、行列演算といった実用的なアルゴリズムの実装まで、いくつかの例を通して解説します。
1. 配列のメモリレイアウトとアドレス
配列はメモリ上で連続した領域を占有します。以下の例では、1次元配列および2次元配列のアドレスと要素の配置を確認できます。
#include <stdio.h>
void i ...
5月31日 02:09 投稿
Java章節摘要と配列演習
1、記事概要
内容
本記事はJava学習の摘要と配列演習の問題を紹介します。
2、章02プロジェクト構造
3、演習問題
問題
配列を用いた基本演習を実装します。
3.1 最小値探し
package Practice;
public class practice01 {
// 主方法main関数
public static void main(String[] args) {
int minValue;
int[] values = { 4, 1, 6, 3, 9, 8 }; // 定 ...
5月26日 21:26 投稿
データ構造の基礎:配列、リンクリスト、スタック、キューの実装
配列(シーケンシャルリスト)
配列は連続したメモリ領域にデータを格納するデータ構造です。C言語環境では、名前付きのスタック配列または匿名のヒープ配列として実装できます。
配列の設計
配列を操作しやすくするために、専用の「管理構造体」が必要です。この構造体には通常以下の要素が含まれます:
配列の総容量
現在の最後の要素のインデックス位置
配列へのポイ ...
5月23日 18:40 投稿
ArrayListの仕組みと内部実装の詳細解説
ArrayListの概要
ArrayListは、Javaコレクションフレームワークにおいて最も基本的なデータ構造の一つであり、内部的には可変長の配列として実装されています。通常の配列と異なり、要素の追加に応じて動的に容量を拡張できる特性を持っています。大量の要素を追加する予定がある場合は、ensureCapacityメソッドを事前に呼び出すことで、頻繁な配列再割り当てによるパフォ ...
5月20日 14:13 投稿
LeetCode 2960: テスト済みデバイスのカウント問題
長さn、0から始まるインデックスを持つ整数配列batteryPercentagesが与えられ、これはn個のデバイスのバッテリー百分比を表します。
あなたのタスクは、各デバイスiを順番にテストし、以下のテスト操作を実行することです:
もしbatteryPercentages[i]が0より大きい場合:
テスト済みデバイスのカウントを増やす。
インデックスが[i + 1, n - 1]のすべてのデバイスのバッテ ...
5月19日 14:13 投稿
C言語基礎ガイド:データ型から制御構文まで
データ型とC言語
基数の表示
// 10進数、8進数、16進数で値256を表示
#include <stdio.h>
int main(void) {
int val = 256;
printf("dec=%d; oct=%o; hex=%x\n", val, val, val);
printf("dec=%d; oct=%#o; hex=%#x\n", val, val, val);
return 0;
}
10進数は%d、8進数は%o、16進数は%xで表示します。接頭辞(0, 0x)を表示するには%# ...
5月17日 22:27 投稿