質問編集履歴

2

質問文で引用しているコードを自分で書いたものからサンプルコードのものに変更

2018/12/26 12:12

投稿

KIYZ
KIYZ

スコア17

test CHANGED
File without changes
test CHANGED
@@ -106,9 +106,9 @@
106
106
 
107
107
 
108
108
 
109
- quicksort(A, i);
109
+ quicksort(A, i); // *1
110
-
110
+
111
- quicksort(A + i, len - i);
111
+ quicksort(A + i, len - i); // *2
112
112
 
113
113
  }
114
114
 
@@ -254,7 +254,7 @@
254
254
 
255
255
 
256
256
 
257
- 1.1 「*1の `quicksort()` に渡している引数 `array` は、配列内のピボット以下の範囲の先頭の要素を指し、 `large` は配列内のピボット以下の範囲の最後の要素の次の要素を指している。」という解釈で正しいのか。
257
+ 1.1 「*1の `quicksort()` に渡している第一引数は、配列内のピボット以下の範囲の先頭の要素を指し、第二引数は配列内のピボット以下の範囲の最後の要素の次の要素を指している。」という解釈で正しいのか。
258
258
 
259
259
 
260
260
 
@@ -262,7 +262,7 @@
262
262
 
263
263
 
264
264
 
265
- 2.1 *2の `quicksort()` に渡している二つの引数はそれぞれ何を指しているのか。なぜ `array + large` と `len - large` となっているのか。(ここが一番理解できない部分ですので、初学者でも分かるように解説して頂けると幸いです。
265
+ 2.1 *2の `quicksort()` に渡している二つの引数はそれぞれ何を指しているのか。なぜ `A + i` と `len - i` となっているのか。(ここが一番理解できない部分ですので、初学者でも分かるように解説して頂けると幸いです。
266
266
 
267
267
 
268
268
 

1

誤解を招くコメントを修正

2018/12/26 12:12

投稿

KIYZ
KIYZ

スコア17

test CHANGED
File without changes
test CHANGED
@@ -200,9 +200,9 @@
200
200
 
201
201
 
202
202
 
203
- quicksort(array, large); // 再帰1
203
+ quicksort(array, large); // *1
204
-
204
+
205
- quicksort(array + large, len - large); // 再帰2
205
+ quicksort(array + large, len - large); // *2
206
206
 
207
207
  }
208
208
 
@@ -250,19 +250,19 @@
250
250
 
251
251
  ### 疑問
252
252
 
253
- 1.0「再帰1は配列内のピボット以下の値が集まった範囲をソートするために `quicksort()` を呼び出している。」という解釈で正しいのか。
253
+ 1.0「*1は配列内のピボット以下の値が集まった範囲をソートするために `quicksort()` を呼び出している。」という解釈で正しいのか。
254
-
255
-
256
-
254
+
255
+
256
+
257
- 1.1 「再帰1の `quicksort()` に渡している引数 `array` は、配列内のピボット以下の範囲の先頭の要素を指し、 `large` は配列内のピボット以下の範囲の最後の要素の次の要素を指している。」という解釈で正しいのか。
257
+ 1.1 「*1の `quicksort()` に渡している引数 `array` は、配列内のピボット以下の範囲の先頭の要素を指し、 `large` は配列内のピボット以下の範囲の最後の要素の次の要素を指している。」という解釈で正しいのか。
258
-
259
-
260
-
258
+
259
+
260
+
261
- 2.0「再帰2はピボット以上の値が集まった範囲をソートするために `quicksort()` を呼び出している。」という解釈で正しいのか。
261
+ 2.0「*2はピボット以上の値が集まった範囲をソートするために `quicksort()` を呼び出している。」という解釈で正しいのか。
262
-
263
-
264
-
262
+
263
+
264
+
265
- 2.1 再帰2の `quicksort()` に渡している二つの引数はそれぞれ何を指しているのか。なぜ `array + large` と `len - large` となっているのか。(ここが一番理解できない部分ですので、初学者でも分かるように解説して頂けると幸いです。
265
+ 2.1 *2の `quicksort()` に渡している二つの引数はそれぞれ何を指しているのか。なぜ `array + large` と `len - large` となっているのか。(ここが一番理解できない部分ですので、初学者でも分かるように解説して頂けると幸いです。
266
266
 
267
267
 
268
268