質問編集履歴
10
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -28,9 +28,7 @@
|
|
28
28
|
|
29
29
|
|
30
30
|
|
31
|
-
~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~
|
32
31
|
|
33
|
-
~~ダブルポインタ **bの場合, bはポインタ先のポインタのアドレスかポインタのポインタ先のアドレスどちらを示しているのでしょうか?~~
|
34
32
|
|
35
33
|
![![](1d1ba4b11b22fff84c469da26fc68d75.png)
|
36
34
|
|
@@ -158,7 +156,9 @@
|
|
158
156
|
|
159
157
|
|
160
158
|
|
159
|
+
~~(p=NULL || data > p->data)~~
|
160
|
+
|
161
|
-
(p=NULL || data
|
161
|
+
(p=NULL || data < p->data)
|
162
162
|
|
163
163
|
|
164
164
|
|
@@ -166,7 +166,9 @@
|
|
166
166
|
|
167
167
|
|
168
168
|
|
169
|
+
~~while(p->next != NULL && data < p->next->data)~~
|
170
|
+
|
169
|
-
while(p->next != NULL && data
|
171
|
+
while(p->next != NULL && data > p->next->data)
|
170
172
|
|
171
173
|
|
172
174
|
|
9
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -178,7 +178,7 @@
|
|
178
178
|
|
179
179
|
|
180
180
|
|
181
|
-
**追記**間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
181
|
+
**追記: **間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
182
182
|
|
183
183
|
"お"、"か"はそれぞれ
|
184
184
|
|
8
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -178,9 +178,7 @@
|
|
178
178
|
|
179
179
|
|
180
180
|
|
181
|
-
**追記**
|
182
|
-
|
183
|
-
間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
181
|
+
**追記**間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
184
182
|
|
185
183
|
"お"、"か"はそれぞれ
|
186
184
|
|
7
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -178,7 +178,7 @@
|
|
178
178
|
|
179
179
|
|
180
180
|
|
181
|
-
追記
|
181
|
+
**追記**
|
182
182
|
|
183
183
|
間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
184
184
|
|
6
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -175,3 +175,21 @@
|
|
175
175
|
list **p = head_p;
|
176
176
|
|
177
177
|
とありますが, このhead_pの値はリストの先頭のアドレスを指しているのでしょうか?
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
追記
|
182
|
+
|
183
|
+
間接メンバー"->"は選択演算*、アドレス演算&より優先順位が高いことを考慮して,
|
184
|
+
|
185
|
+
"お"、"か"はそれぞれ
|
186
|
+
|
187
|
+
while(*p != NULL && data < (*p)->data)
|
188
|
+
|
189
|
+
であり、"き"は
|
190
|
+
|
191
|
+
p = &(*p)->next;
|
192
|
+
|
193
|
+
であると思うのですが、これは
|
194
|
+
|
195
|
+
p = **pと表記することも等しいと思うのですかどうなんでしょうか。
|
5
画像の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -150,6 +150,8 @@
|
|
150
150
|
|
151
151
|
```
|
152
152
|
|
153
|
+
![イメージ説明](236b4d14c6eecf57777d3e92ca55d829.jpeg)
|
154
|
+
|
153
155
|
### 試したこと
|
154
156
|
|
155
157
|
まず、"あ"と"い"は先頭が空リストの場合と値が昇順になることを考えて
|
4
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -41,6 +41,16 @@
|
|
41
41
|
|
42
42
|
|
43
43
|
```C
|
44
|
+
|
45
|
+
typedef struct list {
|
46
|
+
|
47
|
+
int data;
|
48
|
+
|
49
|
+
struct list *next;
|
50
|
+
|
51
|
+
} list
|
52
|
+
|
53
|
+
|
44
54
|
|
45
55
|
list * list_alloc(int data) {
|
46
56
|
|
@@ -106,7 +116,7 @@
|
|
106
116
|
|
107
117
|
```C
|
108
118
|
|
109
|
-
void insert2(l
|
119
|
+
void insert2(list ** head_p, int data) {
|
110
120
|
|
111
121
|
list * new = list_alloc(data);
|
112
122
|
|
3
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -128,11 +128,11 @@
|
|
128
128
|
|
129
129
|
list *head = NULL;
|
130
130
|
|
131
|
-
insert2(
|
131
|
+
insert2(&head,100);
|
132
132
|
|
133
|
-
insert2(
|
133
|
+
insert2(&head,50);
|
134
134
|
|
135
|
-
insert2(
|
135
|
+
insert2(&head,20);
|
136
136
|
|
137
137
|
}
|
138
138
|
|
2
list_allocの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -41,6 +41,20 @@
|
|
41
41
|
|
42
42
|
|
43
43
|
```C
|
44
|
+
|
45
|
+
list * list_alloc(int data) {
|
46
|
+
|
47
|
+
list *p = malloc(sizeof(list));
|
48
|
+
|
49
|
+
p->data = data;
|
50
|
+
|
51
|
+
p->next = NULL;
|
52
|
+
|
53
|
+
return p;
|
54
|
+
|
55
|
+
}
|
56
|
+
|
57
|
+
|
44
58
|
|
45
59
|
list * insert1(list *head, int data) {
|
46
60
|
|
1
修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -28,7 +28,9 @@
|
|
28
28
|
|
29
29
|
|
30
30
|
|
31
|
-
~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~
|
31
|
+
~~~~また, 例えば通常のポインタ *aであれば, aはaの指しているポインタ先のアドレスを示し, &aは自分のアドレスを示すことであると思うのですが,~~
|
32
|
+
|
33
|
+
~~ダブルポインタ **bの場合, bはポインタ先のポインタのアドレスかポインタのポインタ先のアドレスどちらを示しているのでしょうか?~~
|
32
34
|
|
33
35
|
![![](1d1ba4b11b22fff84c469da26fc68d75.png)
|
34
36
|
|