typedef struct {
int * original;
int * nums;
int size;
} Solution;
Solution* solutionCreate(int* nums, int numsSize) {
Solution * result = (Solution *)malloc(sizeof(Solution));
result->original = (int *)malloc(numsSize*sizeof(int));
result->nums = (int *)malloc(numsSize*sizeof(int));
result->size = numsSize;
memcpy(result->original, nums, numsSize*sizeof(int));
memcpy(result->nums, nums, numsSize*sizeof(int));
return result;
}
int* solutionReset(Solution* obj, int* retSize) {
*retSize = obj->size;
memcpy(obj->nums, obj->original, obj->size*sizeof(int));
return obj->original;
}
int* solutionShuffle(Solution* obj, int* retSize) {
*retSize = obj->size;
for(int i = 0; i < obj->size; i++)
{
int temp = obj->nums[i];
int pos = rand() % obj->size;
obj->nums[i] = obj->nums[pos];
obj->nums[pos] = temp;
}
return obj->nums;
}
void solutionFree(Solution* obj) {
free(obj->nums);
free(obj->original);
free(obj);
}
この問題を1から10まで事細かく解説してもらえませんか?まだポインタをあまり理解して追わず自力では理解できません。教えてくださる方がいればよろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>leetcode384 c言語
これですかね→ https://leetcode.ca/all/384.html
“Shuffle a set of numbers without duplicates.”
ネット検索で調べると、質問のプログラムより簡単なコードが見つかるのでそちらを参考にしては。
https://www.bing.com/search?q=c%E8%A8%80%E8%AA%9 …
質問文のコードでなければダメな理由があれば別ですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# leetcode 155 minstack 1 2022/05/07 16:43
- C言語・C++・C# 関数へのポインタを返す関数 2 2022/02/05 22:12
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# C#のコンパイルエラーCS0120に関する質問です。 1 2021/12/21 08:51
- Java Java・配列の問題です。 int 「」nums = new int「5」 ⤴︎ この5の事を言葉で 2 2023/06/21 22:30
- C言語・C++・C# C言語 ループ中からの関数の呼び出し方のコーディング 2 2021/11/02 09:33
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- C言語・C++・C# 大至急です。 5つのint型の値が入力される。この中で0を除いた最小値を実行例のように出力するプログ 1 2021/11/15 20:24
- C言語・C++・C# C言語の問題です。 1 2021/12/22 02:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
#define _CRT_SECURE_NO_WARNIN...
-
C言語での引数の省略方法
-
「指定されたキャストは有効で...
-
複数桁10進数の*桁目だけを抽出...
-
整数データの配列から同じ値の...
-
c言語の配列を使ってサイコロを...
-
C言語 エラーの原因がわからな...
-
if と配列の組み合わせ
-
次のプログラムを教えてくださ...
-
C言語での奇数の和
-
【C++】関数ポインタの使い方
-
ゴールドバッハの予想のプログラム
-
卒業研究でよく分からないとこ...
-
VB6でAddressOfを使った良いサ...
-
数字列を3桁ごとにカンマで区切...
-
acceptをalarmでタイムアウトさ...
-
c言語
-
実数の整数部,小数部の取得
-
式は定数値が必要です」という...
-
gccで64ビット整数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
「指定されたキャストは有効で...
-
C言語 配列と関数の練習問題
-
複数桁10進数の*桁目だけを抽出...
-
(int *)の意味
-
if と配列の組み合わせ
-
ラップ関数とはどんなものですか?
-
卒業研究でよく分からないとこ...
-
【C++】関数ポインタの使い方
-
c言語
-
足して100になるような乱数のア...
-
C言語初心者です、、、お助けく...
-
数字列を3桁ごとにカンマで区切...
-
C言語 エラーの原因がわからな...
-
実数の整数部,小数部の取得
-
課題でつまってます・・・
-
商と剰余を同時に求める(C言語)
-
C言語の配列をC++のvectorに高...
-
std::set<int> で、ある値が何...
おすすめ情報