Skip to main content

Command Palette

Search for a command to run...

アルゴ式: 917 Q2. 二分探索木への挿入 (1) (Swift)

Published
1 min read

Q2. 二分探索木への挿入 (1)

  • 理解を問う問題で、入力なしでテキストで形式
  • 逆にこういうときはしっかり構造を作ってしまうね
  • 提出時はInt前提でコードを書いたけれども、その後、Comparableを受け入れるように変更もした
  • append(contentsOf:)が入れ子が深くなっているので、append(_:)を作りたい欲求は抑えた
  • というかメソッド名はinsertの方が良かったか…
  • きっと今後作る機会はあるはず…
  • こういう二分木のコードってどれぐらい使いまわせるのかいまいち掴めていない
  • 今はとりあえず書き慣れて、すっと実装できるようになりたい
  • 今回もplaygroundで、classでComparableに準拠しようとしたらrun(readLine:print:)内だとダメで、外に出すと問題なかった
  • ここら辺のどうして関数内だとダメなのかまだわかっていない
  • 行きがけ順がどの巡回方法を指すのか覚えていられない…。
  • 「行きがけ順」は親、左、右(根から辿っている順に出力する)
  • 「通りがけ順」は左、親、右
  • 「帰りがけ順」は左、右、親
  • 日本語に振り回されている感があるけれど、子の左右は固定でそれに対して親がどの位置に来るか
  • 行きと帰りがペアで、通りがけが値の順番になる出し方

提出

More from this blog

swift-collectionsのSortedCollectionsを試す方法

swift-collectionsを読み込む際にmainブランチを指定する 2024年4月14日現在のswift-collectionsのリリースバージョン1.1.0では、SortedCollectionsが含まれていません(取り除かれました…)。そのため、SortedCollectionsを利用するにはリリースブランチではなく、mainブランチを利用する必要があります。 package.swiftで指定する場合は、下記のようにdependenciesでブランチを指定します。 // swift-...

Apr 14, 20241 min read

Swift 5.9からの `swift package init` の変更点

先日、 swift package init コマンドを使った際にswift 5.9に合わせた変更点に気づきました。 情報があまりなく、私自身が戸惑ったこともあり、コマンドを実行する時の--typeを基準にどういった変更があったのか概要をまとめたいと思います。 Init template cleanup #6144 Swift Fromsでの議論によると、狙いとしてはシンプルなユースケースへの最適化にあるようです。 system-module、manifestと、empty これまであった、 s...

Dec 25, 20231 min read

アルゴ式: 961 Q4. 二部グラフ判定 (DFS ver.) (Swift)

Q4. 二部グラフ判定 (DFS ver.) なんとか毎日問題は解いていたけれども、ブログは空いてしまった Bool?に対してSwitch文を書こうとしたけれども、Optionalの場合は、.some()を挟むというので方針を変更 提出したコードはその名残が残ってしまった 提出はしていないけれども簡単な修正もした このブログを書いている際に、改めてSwitch分で書いたりもした(1, 2) 提出 AC

Jun 18, 20221 min read

Continuous Tumbling

123 posts

Learning Swift/Swift UI, and competitive programming. (he/him)