일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- HAVIT
- duno
- SOPT
- binarySearch
- 동적계획법
- IOS
- GCD
- SQL
- algorithm
- BFS
- 프로그래머스
- SwiftUI
- algoritm
- Til
- SwiftUI 튜토리얼
- SwiftUI Tutorials
- 고득점kit
- 연속펄스부분수열의합
- GroupBy
- 이진탐색
- 0이끝이아니길
- APPJAM
- 다이나믹프로그래밍
- 기초문법
- discardableResult
- DynamicProgramming
- Swift
- URLSession
- concurrency
- dfs
- Today
- Total
목록전체 글 (68)
suvera-dev 🥦
파이썬 이진 탐색 라이브러리 bisect_left(a,x) : 정렬된 순서를 유지하면서 배열 a에 x를 삽입할 가장 왼쪽 인덱스를 반환 bisect_right(a,x) : 정렬된 순서를 유지하면서 배열 a에 x를 삽입할 가장 오른쪽 인덱스를 반환 from bisect import bisect_left, bisect_right => 값이 특정 범위에 속하는 데이터 개수 구하기 from bisect import bisect_left, bisect_right # 값이 left_value, right_value인 데이터 개수를 반환하는 함수 def count_by_range(a, left_value, rignt_value): right_index = bisect_right(a, right_value) left_..
이진탐색에 들어가기전 가장 기본 탐색 방법인 순차 탐색에 대해서 살짝 다루고 가보쟈 ! 순차탐색(Sequential Search)이란 ? 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 방법 - 리스트에 특정 값의 원소가 있는지 체크 - 리스트 자료형에서 특정한 값을 가지는 원소의 개수를 세는 count() 메서드의 내부에서의 순차탐색 # 순차탐색 소스코드 def sequential_search(n, target, array): # 각 원소를 하나씩 확인하며 for i in range(n): # 현재의 원소가 찾고자하는 원소와 동일한 경우 if array[i] == target: return i + 1 # 현재의 위치 반환 . 인덱스는 0부터 시작하니까 1더하기 ..
1. 위에서 아래로 파이썬 기본 정렬 라이브러리 사용 n = int(input()) array = [] for i in range(n): array.append(int(input())) array = sorted(array, reverse= True) for i in array: print(i, end = ' ') 2. 성적이 낮은 순서로 학생 출력하기 파이썬 기본 정렬 라이브러리, 튜플 사용 점수대로 정렬하고 이름만 출력 n = int(input()) array = [] for i in range(n): input_data = input().split() # 이름은 문자열 그대로, 점수는 정수형으로 변환하여 저장 array.append((input_data[0], int(input_data[1]))) ..
우리가 iOS 개발을 하면서 쓰는 Swift 언어는 프로토콜 지향 언어 라고 하죠 ! 흔히 알고있는 객체지향 프로그래밍은 사물을 객체로 형성하여 공통점을 갖는 모든 곳에서 상속받는 객체 내부의 로직을 캡슐화 합니다. 객체 지향 프로그래밍은 SuperClass에 종속적이라는 점과 Value Type을 사용할 수 없다는 것이 단점인데요 ! 또, 단 하나의 SuperClass 만 상속할 수 있기 때문에 시간이 지나면 기능도 확장되므로 이에 따라 복잡도가 높아지고 관리도 어려워 지게 됩니다. 프로토콜 지향 프로그래밍은 필요한 부분만 프로토콜로 분리해서 만들 수 있고, 다중 프로토콜을 구현 할 수 있습니다 ! 또, 프로토콜 규칙을 class, struct, enum에 적용할 수 있기 때문에 확장 부분에서도 OOP..