전체 글 (76) 썸네일형 리스트형 백트래킹 백트래킹?현재 상태에서 가능한 모든 경로를 따라 들어가 탐색하다, 원하는 값과 불일치하는 부분이 발생하면 더 이상 탐색을 진행하지 않고 전 단계로 돌아가는, 즉 이름 그대로 방금 왔던 길을 되짚어가는, backtrack1 하는 알고리즘이다. Promising : 트리 구조를 기반으로 DFS로 깊이 탐색을 진행하면서 각 루트에 대해 조건에 부합하는지 체크한다.Pruning (가지치기): 해당 트리에서 조건에 맞지않는 노드는 더 이상 DFS로 깊이 탐색을 진행하지 않고 가지치기를 한다. 해를 구하는 도중 해가 아니어서 막히면 막히기 전으로 다시 돌아가서 해를 찾는 기법가상의 트리에서 해를 구하기 위해 부모 노드에서 자식 노드까지 뻗어나간다. 만약 해당 노드가 조건에 맞지 않는다면 다시 부모노드로 돌아간다.해.. [DAY-27] SELECT, INSERT 6.1 SELECT문 1. 특정한 조건의 데이터만 조회 1) WHERE 조건문 ㆍ 서브쿼리 쿼리문 안에 쿼리문 SELECT name, height FROM usertbl WHERE height > 177; -- 서브쿼리 SELECT name, height FROM usertbl WHERE height > (SELECT height FROM usertbl WHERE Name = '김경호'); ㆍ ANY와 ALL /* 만약 하위커리의 반환 값이 두 개 이상일 경우 오류가 남 SELECT name, height FROM usertbl WHERE height >= (SELECT height FROM usertbl WHERE addr ='경남'); */ - -- 하위쿼리의 반환값이 173, 170일 때 -- AN.. [Day-26] SQL 기본 mySQL 1) 데이터 용어 정리 ㆍ 데이터 ㆍ DBMS ㆍ 데이터 형식 데이터 형식 훨씬 예민, 자리수 한자리라도 더 아끼려고 하는 딱 그 공간만큼 ex) 주민등록번호 14개 들어가게 ㆍ 기본 키 (PRIMARY KEY) 기본키 열은 각행을 구분하는 유일한 열 중복되어서도 비어 있어서도 안됨. 데이터베이스를 관리하는데 있어 핵심적인 역할 ㆍ 외래 키 두 테이블의 관계를 맺어주는 키 SQL 구조화된 질의언어 2) 테이블 만드는 방법 - 직접 - 커리문 작성 최종적으로 반영이 안되는 경우 refresh all 데이터 입력 단축키 쿼리문 생성 ctrl t 탭 닫기 ctrl w 실행 ctrl shift enter 쿼리문 실행하는데 걸리는 시간 / 데이터 가져오는데 걸리는 시간 구분 mySQL 모두 소문자로 인.. 삼항연산자 입력된 세 정수 a, b, c 중 가장 작은 값을 출력하는 프로그램을 작성해보자. 단, 3항 연산을 사용한다. 따라서 3항 연산을 중첩해(괄호로 묶는 등..) 이용하면 여러 값들을 순서대로 비교해 가장 큰/작은 값을 계산할 수 있다. 예를 들어 (a if a>b else b) if ((a if a>b else b)>c) else c 와 같은 계산식은 a, b, c 의 값 중 가장 큰 값으로 계산된다. “연산자 우선순위”를 검색하면 우선순위와 결합방향이 나온다. 예를 들어 변수에 어떤 값을 대입하는 대입(assign) 연산자 = 의 우선순위는 가장 낮고, 오른쪽에서 왼쪽의 결합방향을 가진다. a, b, c = input().split() a = int(a) #변수 a에 저장되어있는 값을 정수로 바꾸어 다시.. 비프시프트연산 왼쪽 비트시프트()가 될 때에는 왼쪽에 0(0 또는 양의 정수인 경우)이나 1(음의 정수인 경우)이 개수만큼 추가되고, 가장 오른쪽에 있는 1비트는 사라진다. 예시 n = 10 print(n1) #10을 반으로 나눈 값인 5 가 출력된다. print(n2) #10을 반으로 나눈 후 다시 반으로 나눈 값인 2 가 출력된다. 정수 10의 2진수 표현은 ... 1010 이다. 10 > 1 을 계산하면 ... 101 이 된다. 이 값은 10진수로 5이다. ** python에서 실수 값에 대한 비트시프트 연산은 허용되지 않고 오류가 발생한다. (실수 값도 컴퓨터 내부적으로는 2진수 형태로 저장되고 비트시프트 처리가 될 수 있지만, python 에서는 허용하지 않는다.) 정수 2개(a, b)를 입력받아 a를 2b배.. input 대신 sys.stdin.readline 시간복잡도 본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다. , 이때는 맨 끝의 개행문자까지 같이 입력받기 때문에 문자열을 저장하고 싶을 경우 .rstrip()을 추가로 해 주는 것이 좋다. import sys n = sys.stdin.readline() 10진수, 8진수, 16진수 10진수를 8진수, 16진수로 출력하기 '%x'%n print('%X%n) 대문자 형태 문자열로 출력 %x 16진수(hexadecimal) %o 8진수(octal) 16진수를 10진수로 ㅂ a = input() n = int(a,16) [Day-19] 참조타입, 클래스① 2023.01.17(화) chap.05 참조타입 05-1. 참조 타입과 참조 변수 05-2. 배열 05-3. 열거 타입 chap.06 클래스 06-1 객체지향 프로그래밍 06-2 필드 06-3 생성자 05-1 참조 타입과 참조 변수 1) 기본 타입과 참조 타입 ㆍ 기본 타입 - 정수 타입(byte, char, short, int, long) / 실수 타입(float, double) / 논리 타입 - 실제 값을 변수 안에 저장(스택영역) int age =25; double prince = 100.5; ㆍ 참조 타입 - 배열 타입 / 열거 타입 / 클래스 (*String은 클래스)/ 인터페이스 - 메모리의 번지(주소)를 변수 안에 저장(값x) - 번지를 통해 객체를 참조 - 변수는 스택영역 객체는 힙 영역에.. 이전 1 ··· 5 6 7 8 9 10 다음