質問編集履歴

2

内容の追加

2020/01/28 12:53

投稿

kawaramuu
kawaramuu

スコア21

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  マージソートは[マージソートの参照](https://qiita.com/suecharo/items/30f5d817da4c948c3be6)を参照して、プログラムを作成しています。
6
6
 
7
- 現在、valueのみのリストを作成し、valueのリストのソートはできているのですが、keyと分離しているため、希望する出力になりません。(プログラムマージソートの部分は省略しています)
7
+ 現在、valueのみのリストを作成し、valueのリストのソートはできているのですが、keyと分離しているため、希望する出力になりません。(プログラムマージソートの部分は参照先と同じものを使用しているため省略しています)
8
8
 
9
9
  このような場合は、どのようにしてソートしたvalueともとの辞書のkeyを対応させるのでしょうか。
10
10
 

1

内容の追加・修正

2020/01/28 12:53

投稿

kawaramuu
kawaramuu

スコア21

test CHANGED
@@ -1 +1 @@
1
- pythonの辞書におけるvalueのソート(sortedを使用しない方法)
1
+ pythonの辞書におけるvalueのマージソート
test CHANGED
@@ -1,16 +1,40 @@
1
1
  pythonの辞書におけるvalueのソートに関してです。
2
2
 
3
- 以下の辞書を、**sortedを用いずに、安定ソート**を行うプログラムを教えていただきたいです。
3
+ 以下の辞書のvalueでマージソートするプログラムを教えていただきたいです。(**sortやsortedを使用せず**にソートしたいです)
4
4
 
5
- ソートは辞書valueで行いたいです。辞書のkeyとvalueを分離して、valueでソートた場合、keyが対応しないため、詰まっています。
5
+ マージソートは[マージソート参照](https://qiita.com/suecharo/items/30f5d817da4c948c3be6)参照して、プログラムを作成しています。
6
6
 
7
+ 現在、valueのみのリストを作成し、valueのリストのソートはできているのですが、keyと分離しているため、希望する出力になりません。(プログラムはマージソートの部分は省略しています)
8
+
9
+ このような場合は、どのようにしてソートしたvalueともとの辞書のkeyを対応させるのでしょうか。
10
+
7
- 安定ソートを行いたいため、可能であればマージソートを希望してい
11
+ マージソートを使用して希望する出力が得られれば、他の方法でも問題ありせん
12
+
13
+
14
+
15
+ また、もし可能であれば、マージソートを降順にする方法も同時に教えていただけるとありがたいです。
8
16
 
9
17
  ```python
10
18
 
11
19
  point = {'A': 10, 'B': 29, 'C': 4, 'D': 10, 'E': 18, 'F': 4}
12
20
 
21
+
22
+
23
+ point_values = list(point.values())
24
+
25
+ print(merge_sort(point_values))
26
+
13
27
  ```
28
+
29
+ 以下が現在の出力です。
30
+
31
+ ```ここに言語を入力
32
+
33
+ [4, 4, 10, 10, 18, 29]
34
+
35
+ ```
36
+
37
+
14
38
 
15
39
  以下が希望する出力です。
16
40
 
@@ -19,7 +43,3 @@
19
43
  [('B', 29), ('E', 18), ('A', 10), ('D', 10), ('C', 4), ('F', 4)]
20
44
 
21
45
  ```
22
-
23
- 上記の辞書から安定ソートを行い、希望する出力が可能なプログラムを教えていただきたいです。
24
-
25
- よろしくお願いいたします。