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