정렬의 종류 선택정렬 특정 리스트에서 가장 작은 데이터를 선택해서 앞으로 보내면서 정렬해주는 방법으로 시간이 오래걸림 삽입정렬 데이터를 확인하며 각 데이터를 적절한 위치에 삽입하는 정렬로 특정 숫자의 왼쪽 부분들은 이미 정렬된 것으로 가정함. 특정숫자의 왼쪽부터 처음에 위치한 배열의 숫자까지 for문을 돌리며 앞의 숫자가 더 작다면 그 뒤에 특정숫자를 삽입해줌. 퀵 정렬 = 피벗정렬 pivot을 기준으로 pivot보다 작은 숫자들을 왼쪽으로 큰 숫자들을 기준점 오른쪽으로 옮기며 이 과정을 반복하다보면 정렬됨 계수정렬 가장 큰 숫자와 가장 작은 숫자의 차이+1개 만큼의 배열을 선언하고 배열의 원소 번호와 같은 숫자일 경우 +1을 끝까지 해줘서 각 원소에 저장된 숫자만큼 원소번호를 출력하는 것을 끝까지 해주..
(1) 깊이 우선 탐색 DFS dfs : 깊이우선 탐색으로 넓게 퍼지며 탐색하는 것이 아니라 가장 깊은 곳까지 우선 탐색 후 넓게 퍼져가며 탐색하는 방법. => 깊이를 우선으로 먼저 탐색하고 탐색이 끝난 후에는 탐색을 시작한 위치로 돌아와 넓게 퍼지며 또 다른 노드에서 깊은 곳까지 탐색하는 방법. => 따라서, 중요한 것은 탐색한 지점을 기억해놔야한다는 점이고 이를 위해 재귀를 적절히 사용할 예정이다. => 익숙해지면 반복문을 통한 방법보다 재귀를 사용해 stack을 구현하는 것이 편리. (2) 너비 우선 탐색 BFS bfs : 너비 우선 탐색으로 넓게 퍼지며 현 위치 노드에 연결된 모든 노드를 우선으로 탐색하고 그 다음으로 한번 깊이를 들어가주며 그 노드의 연결된 모든 노드를 우선으로 탐색하는 방법 =..
구현 : 머릿속의 알고리즘을 소스코드로 바꾸는 과정 *언어중 구현이 가장 쉽지만 시간이 길게 걸리는 python. c로 짤 수 있지만 python 코딩테스트 준비를 위해 python으로 작성할 예정 *사용할 언어 : python => int자료형의 데이터 개수에 따른 메모리 사용량을 고려해야한다. list길이(데이터 개수) 메모리 사용량 1,000(천) 약 4KB 1,000,000(백만) 약 4MB 10,000,000(천만) 약 40MB 참고해서 개발환경에 따라 list사용여부, 활용 방법 등을 생각해내야함. #구현 #상하좌우 => 좌표를 list로 만들어 넣고 x좌표가 1보다 작으면 안 되고 n을 넘을때부터 안 됨. y도 마찬가지로 생각. 나머지는 그냥 for문과 if로 간단히 처리 ''' n = in..
그리디 알고리즘이란? 현재 상황에서 지금 당장 좋은 것만 고리는 방법 = 탐욕적, 욕심쟁이 기법! = GREEDY! 현재상황에서 가장 좋아보이는 것을 선택해도 문제를 풀 수 있나?를 생각했을 때 그것이 성립하다면 GREEDY를 시도할 것! 기본적인 예제 1. 거스름돈 문제 => 최소 거스름돈의 개수 => 개수를 적게 만들기 위해서는 당연히 주는 동전의 단위가 커야함. => for문을 돌릴때 동전의 단위가 큰 것부터 걸리게끔 조건을 걸고 동전의 나머지가 0이 되는 순간 개수 출력 x = int(input()) cnt = 0 while x!=0: if x//500: print(x//500) cnt = cnt + x//500 x = x%500 if x//100: print(x//100) cnt = cnt + ..
lambda는 익명함수(이름이 없는 함수)를 사용하기 위해 이용됩니다. v = lambda 인수1, 인수2,.... : 식 => 람다뒤에 인수, 콜론 그리고 실행할 식을 기술합니다. #람다를 사용한 식 x2 = lambda x:x*2 #함수를 사용한 식 def x2: return x*2 lambda사용시, def와 return을 사용할 필요가 없다는 장점이있다. 1. map과 함께 사용 nums = [1,3,5,7,9] x2 = lambda x : x*2 a=list(map(x2,nums)) print(a) #map을 사용해 nums를 x2의 형식에 맞춰서 list형식으로 저장됨 #결과 : [2, 6, 10, 14, 18] map(function, iterable,...) 첫번째 인수 : 함수 오브젝트,..
1. round(a,b) a값을 b자리까지 나타내겠다 -> b+1자리에서 반올림 2. reversed list(reversed(list[0]))을 통해 list[0]을 기준으로 뒤집어줌. =>list가 이차원일때 3. sorted와 sort -sorted result = sorted(a_list,reverse=true) result값에 return value -sort sort(a_list,reverse=true) sort의 경우, return value가 없고 자체가 정렬됨 4.random import random random_num = random.randint(-100,100) #-100에서 100까지 무작위추출 5. 이차원 list를 한줄로 만들 때 one_d_list = sum(my_list,[..

1. 정렬이란 정해진 규칙대로 수가 나열되는 것이다. 2. 정렬을 위한 함수 - sort() list를 정의했다면 list.sort()를 사용해 오름차순 정렬 - sort(reverse = True) list를 정의했다면 list.sort(reverse = True)를 사용해 내림차순 정렬 -key sort()에 변수 key를 주어, key에 저장된 결과에 따라서 정렬한다. ex) key가 의미하는 것이 문자열의 길이라면 list.sort(key = len)으로 사용하고 list 원소의 첫번째부터 len을 파악하여 값에 맞춰서 정렬한다. 3. list1의 값을 그대로 유지하며 저장하고 싶다면? - list1에 sort()를 사용하게 되면 list1이 sort됨 - list2에 list1의 sorted된 ..

구구단중 2단을 출력하는 코드를 작성 => 구구단 2단에 해당하는 숫자가 여러개이기에, "list"를 사용하는 것이 합리적 리스트에 (n*i) 값에 해당하는 숫자를 추가할 때 "list명.append()"를 사용한다. => for문 혹은 while문을 사용하는데, 위에서는 range를 사용해 for문 활용 => 배열을 return하고 print해서 list로 결과를 출력 c언어 python || or && and 게시물 건수가 한 페이지의 단위에 딱 맞게 떨어진다면 건수/단위 자체를 출력 => if 게시물 건수가 한 페이지의 단위에 딱 맞게 떨어지지 않는다면 건수/단위 +1 (나머지를 담을 1장 더 필요)=> else 몫의 표현 / : in c // in python

try: #오류가 발생할 수 있는 구문 except Exception(오류종류) as e: # 오류 발생시 작동할 구문 else: #오류 발생하지 않을시 작동할 구문 finally: #무조건 마지막에 실행 - 4/0을 하면 오류가 나기에 print()함수 안의 문장이 작동되지 않음 - 하지만, 예외처리를 함으로써 오류의 종류를 출력하고 print()함수도 작동됨 예외처리시, 오류예상부분에서 오류가 났어도 정상 작동이 된다. - else 사용 오류가 나지 않았을 경우 실행할 코드를 작성 [여기서는 만약 파일을 읽기용으로 f에 불러온것이(오류발생가능구문)/(오류가 발생하지 않는다면) else에 들어가 f.read()를 수행해 그 값을 프린트하게 됨] -finally 무조건 try를 했다면 finally를 실..

- 미리 만들어 놓은 파이썬 파일 (함수 및 변수, 클래스 등) 1. 같은 경로에 있을 때 import 사용할 모듈의 이름 - 이후 import한 모듈의 내부 함수 및 변수 혹은 클래스를 '.'을 통해 호출하여 사용 from 사용할 모듈의 이름 imort 모듈 내부 함수 - 해당 모듈의 특정 내용만 사용하고 싶을 때 from 모듈이름 improt 함수이름을 통해 사용 2. 모듈이 서브폴더 안에 작성된 경우 같은 폴더 안에 파일이 동일한 경로에 작성되지 않고, 사용하려는 모듈의 위치에 작성된 폴더 내부에 있는 경우 - 파이썬이라는 폴더 안의 mod2를 모듈로 import해 사용하고 싶다면, import sys sys.path.append("파이썬 폴더의 경로를 복사 붙여넣기") import mod2 -하위..
- Total
- Today
- Yesterday
- c++덱
- 11053 백준
- 핀테크 트렌드
- CREATE ASSERTION
- 10866 백준
- 백준 11053 파이썬
- 백준 15650 파이썬
- 13886
- 백트래킹(1)
- 스택 파이썬
- 소프트웨어공학설계
- 기사작성 대외활동
- 영화 리뷰 긍정 부정 분류
- LAMBDA
- CSMA/CD란?
- 백준 10866
- stack 컨테이너
- 파이썬 알아두면 유용
- 모듈 사용법
- 4963 섬의개수
- DRF 회원관리
- 코딩월드뉴스
- 효율적인방법찾기
- 온라인프로필 만들기
- mm1queue
- 백준 4963
- 기본 텍스트 분류
- 백준 숫자놀이
- 딥러닝입문
- 시뮬레이션 c
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |