パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

Python3 vs C++ vs Haskell

2022-08-13 | 新規1000万人ぐらいにプログラムをマスターしてもらいたい

解いてみた問題はこちらです

 

a,b 2つのリストがあって

aにソートする数列

bにaのソート時に固定する数列の位置が入ります

固定する数列の位置はソートせずにその他を昇順でソートします

 

C++ プログラムの骨格は同じです

型宣言が必要なので、その分長くなります

 

 

Haskell 初心者が書くとこんな感じです

loopLoop

全検索型のソートの入れ替え判断の位置を2つずつ設定しています

 

constSort

15 比較する位置がなければ現時点のソート結果を返す

16 比較する2つの位置のどちらかが固定ならばソートせずに入れ替える位置を削って再帰

17 18 比較する2つの位置で逆順なら入れ替えて再帰

19 ソートせずに入れ替える位置を削って再帰

 

簡単なプログラムを複雑回帰にして、プログラム筋力を養うのにHaskellは向いています

われながら、よく作れた...


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。