Python

ยท Python
python์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ตฌํ˜„๋œ heapq ๋ชจ๋“ˆ์ด ์žˆ์–ด ๋ฐ”๋กœ ๊ฐ€์ ธ๋‹ค ์“ธ ์ˆ˜ ์žˆ๋‹ค. python ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋‚ด์žฅ ๋ชจ๋“ˆ์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํ•จ๋˜์–ด์žˆ์–ด, ๋ณ„๋„ ์„ค์น˜์—†์ด `import heapq`๋กœ ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. โฌ‡๏ธ python heap queue algorithm ๊ณต์‹๋ฌธ์„œ โฌ‡๏ธhttps://docs.python.org/3/library/heapq.html heapq โ€” Heap queue algorithmSource code: Lib/heapq.py This module provides an implementation of the heap queue algorithm, also known as the priority queue algorithm. Heaps are binary trees for w..
ยท Python
JavaScript javascript์—์„œ๋Š” ๋นˆ ๋ฐฐ์—ด []์€ truthyํ•œ ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์— ์ฐธ์œผ๋กœ ๊ฐ„์ฃผ๋œ๋‹ค.javascript์—๋Š” ์•„๋ž˜ ๊ตฌ๋ฌธ์ด ๋ชจ๋‘ ์‹คํ–‰๋œ๋‹ค.if (true)if ({})if ([]) ๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ๋Š” ๋น„์–ด์žˆ์–ด๋„ ๋ฉ”๋ชจ๋ฆฌ์— ๊ฐ์ฒด๋กœ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— "Truthy" (์ฐธ๊ฐ™์€ ๊ฐ’) ์œผ๋กœ ๊ฐ„์ฃผ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. Python์ด์— ๋ฐ˜ํ•ด, Python์—์„œ [], {}, "", 0, None ๋“ฑ์€ "Falsy" ๋กœ ๊ฐ„์ฃผ๋œ๋‹ค.if ([]) ์œ„ ๊ตฌ๋ฌธ์€ ํŒŒ์ด์ฌ์—์„œ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.
ยท Python
์ƒํ™ฉํŒŒ์ด์ฌ์—์„œ dictionary ์ž๋ฃŒํ˜•์„ ์ด์šฉํ•ด์„œ ์ƒˆ๋กœ์šด ํ‚ค์— ๋ˆ„์ ๊ฐ’์„ ํ• ๋‹นํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์–ด๋–ค ๋ฌธ์ž์—ด์ด ์žˆ์„๋•Œ, ๊ทธ ๋ฌธ์ž์—ด์„ ์ˆœํšŒํ•˜๋ฉด์„œ ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ ๋ช‡๋ฒˆ ๋‚˜์˜ค๋Š”์ง€ ์„ธ๊ณ ์‹ถ์„ ๋•Œ dictionary๋กœ `{๋ฌธ์ž: ๋นˆ๋„์ˆ˜}` ๋กœ ๊ด€๋ฆฌํ• ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์“ธ ์ˆ˜ ์žˆ๋‹ค.์˜ˆ๋ฅผ๋“ค์–ด "apple"์˜ ๊ฒฝ์šฐ `{"a": 1, "p":2, "l":1, "e":1}` ์ด๋ ‡๊ฒŒ ๋ง์ด๋‹ค. ๋ชฉํ‘œdict = {'a': 1} ์˜ˆ์‹œdict = {}dict['a'] += 1 ์ด๋Ÿฌ๋ฉด key error ๊ฐ€ ๋‚œ๋‹ค. ์•„์ง ์กด์žฌํ•˜์ง€๋„ ์•Š๋Š” Key์—๋‹ค๊ฐ€ ๊ฐ’์„ ๋ˆ„์ ํ•˜๋ ค๊ณ  ํ•ด์„œ ์ด๋‹ค.๋ฌผ๋ก  ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฐ’์„ "ํ• ๋‹น"๋งŒ ํ•˜๋Š” ๊ฒฝ์šฐ๋ผ๋ฉด ๋‹น์—ฐํžˆ ๋ฌธ์ œ ์—†์ด ์ž˜๋œ๋‹ค. dict['a'] = 0 ํ•˜์ง€๋งŒ ์—ฌ๊ธฐ์„œ ํ•˜๊ณ  ์‹ถ์€๊ฑด ๋ˆ„์ ๋œ ๊ฐ’์„ ์›ํ•˜๋Š” ํ‚ค์— ๋ฐ”๋กœ ํ• ๋‹นํ•˜๋Š” ๊ฑฐ๋‹ค.dict ..
ยท Python
class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next head = ListNode(1, ListNode(2, ListNode(3, ListNode(4, ListNode(5, None))))) class Solution: def function(self, param: ListNode): print(param)solution = Solution() solution.function(head) print ๊ฒฐ๊ณผLi..
ยท Python
๊ตฌ๊ธ€ ์ฝ”๋žฉ?์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ…์ŠคํŠธ, ํŒŒ์ด์ฌ ์ฝ”๋“œ๋ฅผ ์ž์œ ๋กญ๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ํ…์ŠคํŠธ ์—๋””ํ„ฐ ํŠน์ง•ํ”„๋กœ๊ทธ๋žจ์„ ์„ค์น˜ํ•˜์ง€์•Š๊ณ ๋„ ์›น ๋ธŒ๋ผ์šฐ์ €๋งŒ ์žˆ์œผ๋ฉด ํŒŒ์ด์ฌ์œผ๋กœ ๊ฐœ๋ฐœ ๊ฐ€๋Šฅ ํŒŒ์ด์ฌ์„ ์‹คํ–‰ํ•˜๊ธฐ์œ„ํ•œ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ pc์— ์„ค์น˜ํ•ด์„œ ์†Œ์Šค์ฝ”๋“œ-์ปดํŒŒ์ผ-์‹คํ–‰ ๋ฐฉ์‹์„ ๊ฑฐ์ณ์•ผ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•œ ์ „ํ†ต์ ์ธ ๋ฐฉ์‹ ํƒˆํ”ผ ๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ ์„œ๋ฒ„ ์ž์›์„ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉ ์‰ฌ์šด ๊ณต์œ  - ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ๋„ ์‹ค์‹œ๊ฐ„ ๊ณต์œ  ๊ฐ€๋Šฅ, ๊ตฌ๊ธ€ ๋“œ๋ผ์ด๋ธŒ ์—ฐ๋™ ์‚ฌ์šฉ์ฝ”๋žฉ์—์„œ ํŒŒ์ผ์€ ๋…ธํŠธ๋ถ์ด๋ผ๊ณ  ๋ถ€๋ฆ„์ƒˆ ํŒŒ์ผ ์—ด๊ธฐ File < New notebook ํ™•์žฅ์ž๋Š” .ipynb๋กœ interactive python notebook ์˜ ์•ฝ์žIPython Notebook๋ž€? ํŒŒ์ด์ฌ์„ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์†Œ์Šค์ฝ”๋“œ์™€ ํ…์ŠคํŠธ๋ฅผ ์“ธ ์ˆ˜ ์žˆ๋Š” ์บ”๋ฒ„์Šค ํŒŒ์ผ์ธ Jupyter Notebook์˜ ์ด์ „ ๋ช…์นญ ์ฃผํ”ผํ„ฐ ..
ยท Python
JavaScript const string = 'dcba' console.log(string.split('').sort().join('')) //'abcd' ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์ •๋ ฌ์„ ํ•˜๊ณ  ์‹ถ์œผ๋ฉด `sort()`๋ฅผ ํ™œ์šฉํ•œ๋‹ค. ํ•˜์ง€๋งŒ, `sort()` ๋ฉ”์„œ๋“œ๋Š” `๋ฐฐ์—ด ์ž๋ฃŒํ˜•๋งŒ ์ •๋ ฌ์ด ๊ฐ€๋Šฅ`ํ•˜๋‹ค. ๋”ฐ๋ผ์„œ, ๋ฌธ์ž์—ด์„ ์ •๋ ฌํ•˜๊ณ  ์‹ถ์œผ๋ฉด ์šฐ์„  ๊ทธ ๋ฌธ์ž์—ด์„ ๋ฐฐ์—ด๋กœ ๋ณ€๊ฒฝํ•ด์ค˜์•ผ ํ•œ๋‹ค. 1. `split()` ๋ฉ”์„œ๋“œ๋กœ ๋จผ์ € ๋ฌธ์ž์—ด์„ ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค. split์˜ ๊ธฐ๋ณธ ๋ฌธ๋ฒ•์€ `split(separator)`์œผ๋กœ, separator ๊ธฐ์ค€์œผ๋กœ ์–ด๋–ป๊ฒŒ ๋ฐฐ์—ด์„ ๋‚˜๋ˆŒ๊ฑด์ง€ ์ •ํ•ด์ค„ ์ˆ˜ ์žˆ๋Š”๋ฐ, `string.split('')`์œผ๋กœ ์ ์–ด์ค€๋‹ค๋ฉด string์ธ 'dcba'๋ฅผ ' ํ•œ ์ž ํ•œ ์ž ๋ถ„๋ฆฌํ•œ๋‹ค, ์ชผ๊ฐ ๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ๋œ๋‹ค. 2. ์ด์ œ ๋ฐฐ์—ด..
ยท Python
python์—์„œ ์ •๋ ฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ ํŒŒ์ด์ฌ ๋‚ด์žฅ ๋ฉ”์„œ๋“œ์˜ `sort()`์™€ `sorted()`๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ํŒŒ์ด์ฌ ์ •๋ ฌ ๋ฉ”์„œ๋“œ`sort()`๋Š” listํ˜• ์ž๋ฃŒ๊ตฌ์กฐ์—๋งŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด, `sorted()`๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ๋ฆฌ์ŠคํŠธํ˜•, ๋ฌธ์žํ˜•, ํŠœํ”Œํ˜•๊ณผ ๊ฐ™์€ ์ดํ„ฐ๋Ÿฌ๋ธ”ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ์— ๋ชจ๋‘ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฆฌ์ŠคํŠธ sort() ๋ฉ”์„œ๋“œmy_numbers = [2,5,6,1,8,3]my_numbers.sort()print(my_numbers) #[1, 2, 3, 5, 6, 8] sorted() ํ•จ์ˆ˜์ •๋ ฌํ•˜๊ณ ์žํ•˜๋Š” iterable์„ ์ฒซ๋ฒˆ์งธ ์ธ์ˆ˜๋กœ ์ ์–ด์ค€๋‹คlist = [5, 4, 3, 2, 1]print(sorted(list)) #[1, 2, 3, 4, 5]string = 'abcd'print(sorted(string)) ..