2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

僅かな違いで処理速度が大きく異なるらしい - Python

Posted at

sorted()とsort()で実行時間が大きく異なるらしい、

LeetCodeで問題を解いていた時に、

nums = sorted(nums)

というコードを書いた。
この時の成績は487ms

スクリーンショット 2022-10-09 16.41.28.png

実際この成績は上位75%(下位25%)と芳しくなかった。

これを受けてLeetCodeのDiscussionにて他の人のコードを見たところ、
自分のコードではsorted関数を利用していたところを、他の人のコードでは.sort()を使っている人が多かった。

そこでコードを以下のように変更して再度提出したところ、、、

nums.sort()

スクリーンショット 2022-10-09 16.41.46.png
スクリーンショット 2022-10-09 16.41.04.png

一気に上位25%を切りました。。
たったこれだけの違いで実行速度が大きく変わるものなんだと学んだ1日でした。

さらに知りたい方向けのサイト

sortは破壊的な表現でもあるため、気を付けて使ったほうがいいかと思いますし、実際の業務で使える知識なのかはわかりませんが、さらに興味のある方は他にも競プロで使えるで使える処理速度の早い表現を紹介しているサイトがあったので貼っておきます。

Pythonの知っておくと良い細かい処理速度の違い8個

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?