入出力のデータ型がよくわかりません
問題の「関数の入出力例」に、その問題で使う入力と出力のデータ型が示されています。
- 入力のデータ型 — 用意されている関数が受け取る引数の型と引数名です
- 出力のデータ型 — 定義した関数が返すべき型です
問題ごとに扱う型が異なるため、書き始める前に確かめる習慣をつけてください。型の呼び方は言語によって違いますが、Recursionでは言語を問わず使われる分類で表記しています。
よく出てくる型
| 表記 | 意味 | カスタム入力での書き方 |
|---|---|---|
| int | 整数 | 5 |
| double | 小数 | 3.14 |
| bool | 真偽値 | true または false |
| char | 1文字 | 'a' |
| str | 文字列 | "hello" |
| int[] | 整数の配列 | [1,2,3] |
言語による違い
Pythonでは先頭を大文字にしたTrueとFalseを使いますが、カスタム入力に書くのは小文字のtrueとfalseです。
連結リストと二分木
連結リストや二分木の問題では、入力を配列の形で書きます。Recursion側で singlyLinkedList() や toBinaryTree() を使って変換しています。詳しくはこちらの記事を参照してください。
二分木の場合は [0,-10,5,null,-3] のように、木の上の階層から順に並べます。先頭が根ノード、次が左の子、その次が右の子です。