次のような日付文字列のリストがあります:
リーリーSeeking s = ['2017-06-09']
と lst
の間で最も似ている日付文字列はどれですか?
アイデア 1: s と lst の値を日付に変換し、その差を秒単位で走査して比較し、最も小さいものが探している日付文字列になります。
これを達成するためのより良い方法はありますか? ?
typecho2017-06-15 09:23:43
参考までにアイデアをあげておきます
lst.append(s)
lst.sort()
num=lst.index(s)
次に、lst[num-1]とlst[num+1]を比較して小さい方を求めます秒数の差が結果として得られるため、タイムスタンプをトラバースして計算する必要はありません。
良いと思ったらザンガさんにあげて採用してください。
伊谢尔伦2017-06-15 09:23:43
lz は lst を走査しないという意味のような気がします
ソートでも減算でも実際には走査が発生します
リーリー
それを疑似コードとして読んでください。とにかく、それが意味するところです。この方法では、トラバーサルの数が最小限になります。 🎜