유찬희 TA - Git 실습(2)
Branch를 사용하는 이유
1. main 브랜치를 완전하게 돌아가는 코드로 유지하기 위해
2. 불필요한 충돌을 막기 위해
3. 원활한 코드 리뷰 진행을 위해
branch : 복사본을 만드는 것
각자 branch를 만들어 그 위에 commit, 자신의 코드를 올린다.

pull request & merge를 통해 합쳐주는 과정을 거침

C가 또 PUSH를 하고 pullrequest & merge를 하면 필요한, 겹치지 않는 부분만 추가된다.
커밋의 구조
commit hash : 커밋의 고유한 번호, 남긴 커밋 메시지, 변경사항이 같더라도 해시는 다르다.
(누가 변경했는지, 날짜 등도 초단위로 기록됨)
HEAD
현재 내가 존재하는 커밋의 위치
기록은 남기고 싶은데 이전 기록을 보고싶다 -> HEAD를 옮겨 코드 기록을 확인 가능

김종익교수님 DB
Deletion
delete from ~ where ~
Insertion
insert into ~ values ~
속성을 명시하는 경우 / 하지 않으면 모든 속성을 다 채워야 함
다른 테이블에서 원하는 데이터를 추가하는 예시

updates
update 테이블명 set column(attribute) where
joined relations
1. natural join

==

의도하지 않은 애들이 연결된 결과를 얻을 수 있음

2. inner join
3. outer join
- left outer join
- right outer join
- full outer join
View
create view v as <query expression>
materialized view
실제로 저장하는 view
update를 반영해서 일관성을 유지하기 어려울 수 있음
transaction(트랜잭션)
논리적인 한 단위의 일
commit work
rollback work
constraints on a single relation
- not null
- primary key
- unique
- check(P)
JDBC
Java를 이용해 DB에 연결해 작업하도록 하는 인터페이스
ER Model(Entity-Relation Model)
entity : 개체, 개별 object
relationship
relationship set이 attribute를 가지기도 함

advisor이라는 relationship -> date라는 attribute를 가짐
mapping cardinality constraints
relation에 몇개씩 참여하는지
- one to one
- one to many
- many to one
- many to many

total participation : 두
partial participation : 한 줄
코딩테스트 - 탈옥 방지
heapq를 이용한 다익스트라 문제
import heapq
import sys
prison = int(sys.stdin.readline())
prisons = list(map(int, sys.stdin.readline().split()))
prisons.sort()
lighter = int(input())
lighters = list(map(int, sys.stdin.readline().split()))
lighters.sort()
maxheap = []
for i in prisons:
minheap = []
for j in lighters:
tmp = abs(i-j)
if minheap:
if minheap[0] < tmp:
break
heapq.heappush(minheap, tmp)
heapq.heappush(maxheap, -minheap[0])
print(-maxheap[0])
'SW Academy' 카테고리의 다른 글
[CNU SW Academy] 15일차(22.12.21) (0) | 2022.12.23 |
---|---|
[CNU SW Academy] 14일차(22.12.20) (0) | 2022.12.23 |
[CNU SW Academy] 12일차(22.12.16) (0) | 2022.12.18 |
[CNU SW Academy] 11일차(22.12.15) (1) | 2022.12.15 |
[CNU SW Academy] 9일차(22.12.13.) (0) | 2022.12.13 |