次の問題を解決するアルゴリズムを探しています。
私は数字のセットを持っています
(e.g 100,74,104,76,29,79,98,33,201)
互いに隣り合っている数字をグループ化したい(xによって異なる)
たとえば、x=10 は次のように出力する必要があります。
[(100,104,98) (74,76,79) (33,29) (201)]
残念ながら、私はそれを行う方法がわかりません。
編集:私はたくさんのアイデアを始めています。アルゴリズムは効率的である必要はありません。機能していれば問題ありません。
それらの1つは次のとおりです。
- A) Picking first number, comparing its size with all the other numbers
- B) If the condition is complied, saving it in another set and deleting it from the input set
- C) Select the next element that isn't deleted and Start at A (Proceed until input set is empty)
どう思いますか?