일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인생
- 강의
- 계획
- 공부
- 2021
- C++
- 자살
- 철학
- 2024
- 파이썬 강의
- BOJ
- 다이나믹프로그래밍
- it
- 라즈베리파이 모니터
- 프로그래밍
- python
- 자작시
- mmcv
- mmdetection
- 강좌
- 알고리즘
- 파이썬 강좌
- 백준
- 파이썬
- 2020
- dynamic programming
- 슬픔
- dp
- python 강좌
- python 강의
- Today
- Total
목록
공부
(4)
반응형
Stargazer
접근: 이름 부터 최소 스패닝 트리를 구하는 문제 이에 대한 알고리즘은 prim 알고리즘과 kruskal 알고리즘이 유명하다 전략: prim보다는 krusal이 조금 더 접근하기 쉬울 것 같아서 선택했으나, 둘 중 뭘 선택 해도 상관은 없다. 간선을 가중치가 낮은 순서대로 정렬을 한 후에, 작은 것부터 하나씩 tree에 추가한다. 추가할 때는 사이클이 발생하지 않도록 해야하기 때문에, 간선을 추가하려고 할때 두 정점이 같은 집합인지를 확인한다. 같은 집합이라면 패스하고 다음 간선을 조사한다. n-1번이 추가되면 종료한다. (다만 다음 코드 상에는 딱히 최적화를 진행하지 않고, 전체 조사를 하도록 하였다.) 구현: #include #include #include using namespace std; str..
접근: 트리를 이용해서 푸는 문제 트리를 순회하는 순서만 생각하면 된다. 전략: 우선 트리 저장을 배열 형태로 저장하는데, 저장 방식은 다양하나 나는 각 알파벳을 숫자로 치환해서 저장하도록 하겠다. (공간을 많이 잡아먹지 않는 문제이기 때문에, 편한 대로 쓰도록 하겠다. 즉, 최적화된 건 아님) 순회할 때 필요한 정보는 현재 위치와 자식 노드의 유무이다. 구현: #include #include using namespace std; struct Node{ int left; int right; }; vector nod; int n; int c2n(char a){ return (a != '.') ? static_cast(a - 'A') : -1; } char n2c(int a){ return (a + 'A')..
자바스크립트를 공부하다보니 궁금해졌다. name과 class 모두 동일하게 여러요소에 중복하게 쓸 수 있는데, 그 차이점이 도대체 뭘까? 근본적으로 name은 개인을 구별하기 위함이지만 중복이 가능하고, (말그대로 '이름' -> 동명이인 존재 가능) class는 특정 그룹을 묶을때 사용한다. 그래서 중복이 가능한 것이다. 또한 name은 css에서 선택자가 없으므로 사용이 불가하고, 반대로 class는 선택자 있어서 css에서 사용이 가능하다.
주식 공부를 시작했다. 그냥 내가 돈을 벌 수 있는 수단이 노가다나 알바를 제외하고는 없는 거라 생각해서차라리 주식을 공부하는게 나을 거라고 판단했다. 주식공부를 한 뒤에는 파이썬으로 주식 트레이딩 시스템을 구축할 것이다. 그리고 내 의지가 된다면 강의를 올리도록 하겠다사실 강의라고 해봐야 저작권에 모두 걸리는 뻔하디뻔한 자료 배낌 수준이 될 수 밖에 없을지도 모른다.뭐 그때가서 내 위주로 활동을 적는다면 그것도 나름 강의가 될 수도 있겠지 그나마 희망이 존재한다는 것에 감사한다