반응형

2024/09 63

[TIL] sorted() Python

1181 단어 정렬을 풀면서 sorted() 개념을 정리한다 sorted()데이터를 정렬하는 가장 기본적인 파이썬 내장 정렬 함수* 데이터 ; 리스트, 튜플, 문자열, 딕셔너리 함수 포맷sorted(iterable, key=None, reverse=False)sorted(정렬할 데이터)sorted(정렬할 데이터, reverse 파라미터)sorted(정렬할 데이터, key 파라미터)sorted(정렬할 데이터, key 파라미터, reverse 파라미터) 파라미터1) 정렬할 데이터 ; Iterable 한 데이터 이어야 한다 2) Reverse 파라미터오름차순으로 정렬할지 내림차순으로 정렬할지 정할 . 수있다Default 는 reverse=False  3) Key 파라미터어떤 것을 기준으로 정렬할 것인가? so..

TIL/Python 2024.09.13

[TIL] 큐 Queue Python

큐 Queue 스택과 같이 데이터를 임시 저장하는 자료 구조First In First Out 선입선출 FIFO 구조   일상 예시, 카페에서 계산하고 커피를 받는 줄 Buffer (완충기억기) - 데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리 영역 컴퓨터 장치들 사이에서 data 를 주고 받을 때, 각 장치 사이에서 존재하는속도 차이나 시간 차이를 극복하기 위해 임시 기억 자치의 자료 구조로 Queue 를 사용한다    큐 작업Enqueue 큐에 데이터를 추가하는 작업Dequeue 데이터를 꺼내는 작업Front 데이터를 꺼내는 쪽Rear 데이터를 넣는 쪽  배열로 큐 구현하기디큐를 할 때 배열에서 2번째 이후의 모든 원소를 하나씩 앞으로 옮긴다 인큐 처리 복잡도..

TIL/Python 2024.09.12

[백준] 1110 더하기 사이클 Python

1. 문제https://www.acmicpc.net/problem/1110주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다그 새로운 수가 주어진 수와 같은 사이클 길이를 구하는 프로그램을 작성하시오  2. 접근 방식10의 자리 수와 1의 자리 수를 구분하여 합치고 비교하는 방식을 반복해야 하니재귀 함수를 구현해 보기로 했다 3. 전체 코드# N 숫자 입력 받기# 10의 자리 수 a 와 1의 자리 수 b 구분하기# 10의 자리 수를 b 로, 1의 자리 수를 a + b 로 설정하기# count+=1 해 주고 N 과 비교해서 다르면 또 돌기# 이걸 반복해..

알고리즘 2024.09.12

[정글] 정글에서 살아남는 방법

(10 Ways to Survive in KRAFTON JUNGLE)잊지 마라, 네 인생의 주인은 너다.☝️정글에서의 시간은 늘 부족하고 학습량은 많다. 단, 너만 그런 것은 아니다.🕐스스로 깨면 병아리, 남이 깨면 후라이. 물어보기 전에 최선의 ‘내 답’을 먼저 찾자.🐣🍳나의 구급상자와 진통제를 동료에게 아끼지 말자. 언젠가는 다시 돌아온다.😍숲 안에서는 결코 숲의 전경을 볼 수 없다. 동료의 코드리뷰와 피드백을 감사히 여기자.🌲정글에는 오답이 없다. 그렇다고 정답이 있는 것도 아니다.💯오늘의 TIL을 적지 않으면, 정글의 하루는 끝나지 않는다.🖥️몰입하고 몰입해라. 오늘의 몰입이 내일의 성장을 만든다.🎉쓰레기는 먼저 본 사람이 줍는다.🙏끝의 끝까지 하면 기회는 반드시 온다. 크래프톤이..

[정글] Week01 진행 내용/ 회고

진행 일자Week01 2024.09.05 THU - 09.11 WED (정기1주차)Week01.5 2024.09.12 THU - 09.19 THU (자율학습)키워드 키워드공부한 내용 1배열, 문자열 한비님 스터디 2반복문과 재귀함수 재귀 공부 필요3복잡도 (BigO, 시간, 공간)https://helloahram.tistory.com/entry/TIL4정렬https://helloahram.tistory.com/entry/TIL-%EC%A0%95%EB%A0%AChttps://www.notion.so/a1vm5h/9555f7ca181f4f74a315c39ce82b29b65완전탐색 서하님 스터디 https://www.notion.so/a1vm5h/96701ecedb6640f98637731ef5f5717e6이분..

[TIL] 스택 Stack Python

스택 Stack데이터를 임시 저장하는, 하나씩 쌓아 올린 형태의 자료 구조LIFO - Last In First Out 또는 FILO - First In Last Out  like 식당에 쌓여있는 접시, 프링글스, 콘 아이스크림 아래에서부터 쌓고, 위에서부터 꺼내는 방식스택의 동작은 모두 Top 이라는 스택의 한쪽 끝에서만 일어난다  스택 구성stk 스택 배열 - 푸시한 데이터를 저장하는 스택 본체인 list 형 배열 capacity 스택 크기 - 스택의 최대 크기를 나타내는 int 형 정수 ptr 스택 포인터 - 스택이 쌓여 있는 데이터를 개수를 나타내는 정수값 스택의 연산 push() Top 에 있는 원소를 제거 pop(x) 원소 x 를 Top 에 추가 peek() 스택의 상단에 있는 항목을 제거하지 ..

TIL/Python 2024.09.11

[TIL] 재귀 함수 Recursion Function Python

하노이의 탑을 풀기 전에 재귀 함수의 개념 먼저 정리한다  재귀 Recursive 반복 Iterative   재귀 함수 Recursion Function 자기 자신을 다시 호출해 작업을 수행하는 방식자신의 로직을 내부적으로 반복단, '함수 자신' 이 아니라 자기 자신과 똑같은 함수'를 호출하는 것이다! 혼동 주의반복문으로 구현 가능한 로직은 모두 재귀함수로 구현이 가능하고 그 반대도 가능하다  * Base Case 더 이상 문제를 쪼갤 필요가 없는, 종료 조건에 도달한 경우* Recursive Case 문제를 작은 문제들로 나누어 해결하는 과정   + 09/18 WED 나중에 읽어봐야지 https://velog.io/@eddy_song/you-can-solve-recursion 예시01 팩토리얼 함수 1..

TIL/Python 2024.09.11

[TIL] 병합 정렬 Merge Sort Python

병합 정렬일단 반으로 나누고, 나중에 합쳐서 정렬한다  1. 하나의 리스트를 두 개의 균등한 크기로 분할하고 2. 분할된 부분 리스트들을 정렬해서 3. 정렬된 부분 리스트들을 합친다  퀵 정렬과의 차이점 병합 정렬 Merge Sort퀵 정렬 Quick Sort시간 복잡도최악의 경우에도 O(N* logN) 보장 최악의 경우 O(N^2)진행 방법 정확히 반절씩 나눈다 피벗 값에 따라서 편향되게 분할할 가능성이 있다공간 복잡도메모리 활용 비효율적(기존의 데이터를 담을 추가적인 배열 공간 필요)  Merge Sort 를 Python 으로 구현해보기  1번 방식mergeSortdef mergeSort(a): # a 의 길이가 1 이하이면 끝 if len(a)  Mainif __name__ == "__m..

TIL/Python 2024.09.10

[백준] 2750 수 정렬하기 Python

1. 문제https://www.acmicpc.net/problem/2750N 개의 수가 주어졌을 때, 오름차순으로 정렬하는 프로그램을 작성하시오첫째 줄에 수의 개수가 주어진다 (1 2. 접근 방식Quick Sort 를 이용하여 오름차순으로 정렬하기  3. 전체 코드 Quick Sort 개념과 코드는 아래 포스팅에 정리했다 https://helloahram.tistory.com/entry/TIL-%ED%8C%80-%EC%8A%A4%ED%84%B0%EB%94%94-%ED%80%B5-%EC%A0%95%EB%A0%AC

알고리즘 2024.09.10
반응형