https://www.reddit.com/r/leetcode/comments/w26u7o/could_someone_please_explain_the_difference_in/ https://www.reddit.com/r/MLQuestions/comments/wz7s5h/can_someone_explain_time_complexity_and_what_doe/
Time Complexity
- ์๊ฐ ๋ณต์ก๋๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ๊ณผ ์ ๋ ฅ์ ํจ์ ๊ด๊ณ๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
์ปดํจํฐ๊ณผํ์์ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ๋ณต์ก๋๋ ์ ๋ ฅ์ ๋ํ๋ด๋ ๋ฌธ์์ด ๊ธธ์ด์ ํจ์๋ก์ ์๋ํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ทจํด ์๊ฐ์ ์ ๋ํํ๋ ๊ฒ์ด๋ค. ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ๋ณต์ก๋๋ ์ฃผ๋ก ๋น -์ค ํ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ ๋ํ๋ด๋ฉฐ, ์ด ๋น -์ค ํ๊ธฐ๋ฒ์ ๊ณ์์ ๋ฎ์ ์ฐจ์์ ํญ์ ์ ์ธ์ํค๋ ๋ฐฉ๋ฒ์ด๋ค. ์ด๋ฐ ๋ฐฉ์์ผ๋ก ํํํ ๋, (์๋ฅผ ๋ค๋ฉด, ์ ๋ ฅ ํฌ๊ธฐ๋ฅผ ๋ฌดํ๋๋ก ์ ๋ ฅํ์ฌ) ์๊ฐ๋ณต์ก๋๋ฅผ ์ ๊ทผ์ ์ผ๋ก ๋ฌ์ฌํ๋ค๊ณ ๋งํ๋ค. (wiki)
Time complexity is how long it will take a piece of code to solve a problem. This is almost always based on how much data we give the code to solve (known as n). If I ask someone how much money is in his wallet it might be a time complexity of (1) if he remembers how much he's put in there. It's time (n) if he forgot and has to count all of the bills in his wallet (and he has n of them). It's time ( n2 ) if his kids like sneaking photo copies of bills into his wallet so each one he looks at he decides to look at all the others to make sure they aren't duplicates of the one he's holding.
Time complexity in computing is looking at the code and figuring out how long it's going to take to run for an arbitrarily sized data set. We're often interested in average run time, and worst case run time.
* ์ง๊ฐ์ ๋์ด ์ผ๋ง์ธ์ง ๊ณ์ฐํ๋ค๋ฉด O(1), ์ผ๋ง์๋์ง ์์ด๋ฒ๋ ธ๋ค๋ฉด ๋ค์ ์ง๊ฐ์ n๋ฒ(ํ์ธํ ๋๋ง๋ค) ์ํ O(n), ๋ง์ฝ ์ง๊ฐ์ ์์กฐ ์งํ๊ฐ ๋ค์ด ์์ด ์งํ๋ฅผ ๊ฒ์ ์์ ์ด ์ถ๊ฐ๋๋ค๋ฉด O(n^2)
* ์๊ฐ ๋ณต์ก๋๋ ์์ ๋ฐ์ดํฐ์ ์ ๋ํ ์ ๊ทผ์ ์ํ ์์ ์ ๊ณ์ฐ ํ์๋ฅผ ๋ํ๋ธ๋ค.
Reply
- ์ผ๋ฐ์ ์ผ๋ก ์ ์๋ ค์ง ์๊ณ ๋ฆฌ์ฆ์ ์ ๋ต์ด๋ผ๊ณ ํ ์์๋ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ณ ์๋ค.(ํ ๊ธฐ์ค) ๋ฐ๋ผ์ ๋๋ฌด ์ต์ ํ์ ์ง์คํ์ง ์์๋ ๋๋ค๋ ์๊ฒฌ์ด ๋ค์
- reddit, ์ปดํจํ ์ ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ ๋ฆฌ์์ค๋ฅผ ํ์ ํ๊ธฐ ์ข์ ์งํ์ด๋ค. ์ด ๋ฌธ์ ๋ CS(Computer Science)์์ ์ฃผ๋ก ๋ค๋ฃฌ๋ค. ML part์์๋ ๊ธฐ์ ์ ์ผ๋ก ์ํ์๋ ์๋ค๋ ์๊ฒฌ
- ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ฅผ ์ ์ดํดํ๋ฉด ๋ ๋์ ์ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถ ๊ฐ๋ฅ
- Gradient Descent๊ฐ ์์๋ ค์ง neural network์์ ์ฌ์ฉ๋๋ ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ ํ๋ณธ
- Non use loop O(1) , using loop O(n) using loop in loop O(n^2)
'๐ข One step' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[leetcode-5] Longest Palindrome Substring (0) | 2023.03.04 |
---|---|
[leetcode-49] Group Anagrams (0) | 2023.03.02 |
[leetcode-819] Most Common Word (0) | 2023.03.02 |
[leetcode-937] Reorder_Data_in_LogFile (0) | 2023.03.01 |
[leetcode-344] ReverseString (0) | 2023.02.27 |