목록전체 글 (243)
컴퓨터공학 💻 도서관📚
if not 뒤에 나오는 조건을 만족하지 못하면 아래 코드를 수행함 if not number > 100: print("Nooooo") # number가 100을 넘지 않으면 Nooooo를 출력한다
DFS 구현 방법 : 1. Stack 으로 구현 , 2. 재귀함수로 구현 DFS (Depth-First-Search) : 깊이 우선 탐색 , 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 , 그래프 탐색 사용한 자료들 : 스택 , visited 배열 , 그래프 (ArrayList 클래스) DFS 동작 예시: 스택 자료구조인 경우방문 기준: 번호가 낮은 인접 노드부터 DFS 코드 자바 예제 : 스택 자료구조를 사용한 경우 강의 영상 예시처럼 1 2 7 이렇게 스택에 쌓이는 코드 명 : 명령어특 : 특수 명령어자 : 변수 or 자료들 while (명) + isEmpty() 메서드 (특) if (명) + visited[ ] 배열 (자..
파이썬에서 end는 print 문의 옵션 중 하나이다 end옵션을 사용하면 그 뒤의 출력값과 이어서 출력한다. (즉, 줄바꿈을 하지 않게 된다.) print("I like", end=" ")print("romance")# 출력 결과 : I like romance 참고)https://infinitt.tistory.com/11 파이썬(Python) 기초 print ( )문의 옵션 (sep , end , format , Escape )파이썬에서 출력문에 사용되는 함수 print()에는 다양한 옵션들을 사용할 수 있다. 1. sep(separation) 영단어 그대로, 분리하여 출력한다. 다만 분리할 (갈라놓을 문자를 지정할 수 있다.) 이것을 구분infinitt.tistory.com
재귀함수 : (1)종료 조건 + (2)자기자신 반환 재귀함수 : 자기 자신을 호출(반환)하는 함수 재귀함수는 종료 조건을 꼭 명시해야 한다 재귀함수 예제 : 팩토리얼, 최대공약수 계산 def factorial(n): # 팩토리얼 계산 if n == 1: # 종료조건 : if로 명시 return 1 return n * factorial(n-1) # 재귀 : else + return과 함께 자기자신을 호출 (여기선 점화식)N = int(input())print(factorial(N)) 모든 재귀함수는 반복문을 이용하여 동일한 기능을 구현할 수 있다 재귀 함수가 반복문보다 유리한 경우도 있고 불리한 경우도 있다 컴퓨터가 함수를 ..
큐 : 터널, 주유소 큐는 먼저 들어온 데이터가 먼저 나간다 파이썬 큐 : 리스트도 기능적으로는 구현할 수 있지만 시간복잡도가 더 높아서 비효율적임, 덱 / deque 라이브러리 쓰셈 리스트로 큐를 구현할 시pop함수를 사용하면 원소를 꺼낸 뒤 원소의 위치를 조정하는 과정이 필요해서원소를 꺼내는 연산 자체가 O(K)만큼의 시간복잡도가 요구된다. 그래서 비효울적이다. append, popleft 함수 여기서 append 함수는 파이썬 내장함수 append함수와 똑같이 구동하기 때문에 요소를 오른쪽 끝에 추가한다. 그렇기 때문에 삭제하는 함수가 왼쪽부터 삭제하는 popleft 이다. 그래서 우리가 익숙한 순서로 출력하려면 역순으로 바꾸고 출력한다 C++ 큐 : push, pop, ..
스택 : 프링글스 통스택은 먼저 들어온 데이터가 나중에 나간다 파이썬 스택 : 리스트와 파이썬 내장함수 append, pop 사용 C++ 스택 : 라이브러리 활용해서 push, pop, top 함수 사용이 코드에서는 top을 출력하고 삭제하고 다음 top을 출력하고 삭제하는 식으로 스택 출력을 했다. 자바 스택 : 라이브러리 활용해서 push, pop, peek 함수 사용 이 코드에서는 top을 출력하고 삭제하고 다음 top을 출력하고 삭제하는 식으로 스택 출력을 했다.
data = 'abcde'print[::-1] # 출력 결과: 'edcba' # 문자열을 거꾸로 출력하는 방법print[3:0:-1] # 출력 결과: 'dcb' # 주의할 점: 3번 인덱스부터 1번 인덱스까지(0번 까지가 아님) 역순으로 출력한다print[3::-1] # 출력 결과: 'dcba' # 가운데를 생략하면 0번 인덱스까지 역순으로 출력한다 다시 한 번 더 강조 : print[3 : 0 : -1] 이 코드는 3번 인덱스부터 1번 인덱스까지(0번 까지가 아님) 역순으로 출력한다 닫힌 구간 열린 구간
pop함수는 특정 인덱스 값을 매개변수로 입력받아서 해당 요소를 삭제 및 반환한다. a = [1, 2, 3]print(a.pop) # 출력 결과: 3 # a[2]인 3을 삭제 및 반환print(a) # 출력 결과: [1, 2] remove함수는 pop함수와는 다르게 인덱스가 아닌 삭제할 값을 매개변수로 입력받고 해당 요소를 삭제한다 data = [1, 2, 3]data.remove(3)print(data) # 출력 결과: [1, 2] index함수는 리스트에서 특정 데이터가 어느 위치(인덱스 값 / 순서 값)에 있는지를 반환한다중복된 데이터가 있을 경우, 처음 등장하는 위치를 반환한다 data = [1, 2, 3, 4, 3, 2]print(data.index(..