자료구조 시간에 배운 binary search tree를 알아야 이해할 수 있는 개념이다!! (자신의 왼쪽 트리에는 현재보다 작은거, 오른쪽 tree에는 현재 값보다 큰 값이 왔던 tree이다. ) (inorder traverse를 하면 오름차순으로 정렬된 값을 얻을 수 있다) red black tree는 binary search tree중 balance가 맞는 tree이다. (self-balanced라고 한다) red black tree의 조건 1. root node는 black 2. 모든 external node는 black 3. red의 자식은 black 4. 모든 leaf node에서 root node까지 가는데 만나는 black의 개수는 같다. 처음 root는 black으로 만들고, 자식으로는 ..
동기화의 필요 이유 Forks and Joins : fork point에 일이 도착하면, n개의 sub-job으로 쪼개져서 n개의 task로 수행된다. n개의 task가 모두 수행될때까지 기다렸다가 끝난다. Producer-Consumer: producer가 정보를 만들어서 전달해주기 전까지 consumer은 기다려야 한다 Exclusive use resources: 여러개의 process가 resource에 의존적일 때, 모두 같은 시간에 접근해야 한다. -> 동시성 감소? 1. Lock Lock을 해서 특정 코드 영역에 대한 상호 배타성을 보존하는 방식이다. lock문제를 해결하기 위한 방법으로는 크게 3가지가 있다. 1. 소프트웨어적인 방법 ex) 피터슨 알고리즘 2. atomic instructi..
* radix tree 는 radix trie, compact prefix tree라고도 부른다 * radix tree역시 binary search tree를 알아야 한다. 개인적으로는 red black tree 글을 작성하고 이 글을 작성했으므로 red black tree 글을 먼저 보고 오는걸 추천한다. radix tree는 binary search tree, red black tree처럼 왼쪽 < 자신 < 오른쪽 노드의 크기로 배치된다. 그러나 radix tree는 트리의 균형을 맞추는 방식이 조금 다르다. red-black tree는 색상값 데이터를 가지고 노드를 좌우로 회전시키면서 균형을 맞췄다. 그러나 radix tree는 이런 회전 작업 없이도, 키 값에 따라서 0이면 왼쪽, 1이면 오른쪽으..
https://gmnam.tistory.com/226
1. namespace란? 여러명이 서로 나누어 프로젝트를 개발하는 경우 오픈소스 여러개를 합치는 경우 이름이 충돌 나는 경우를 많이 겪어봤을 것이다. 그래서 생긴것이 namespace! namespace SweetDev { } namespace 안에서 생성된 변수, 함수는 그곳에서만 사용된다. 2. std란? C++표준에서 정의한 namespace중에 한 가지이다. cout, cin, endl등 자주 쓰는 함수들이 들어있다. std::cout을 매번 쓰는게 귀찮다면 using 명령어를 사용해서 해결할 수 있다. using std:: cout; using namespace std; 둘중에 하나로...
갑자기... 컴퓨터를 강제종료하면 이런 오류가 생길 수 있다고 한다....ㅠㅠㅠㅠ 1. nvidia-smi 해당 오류가 나온다. 2) apt --installed list | grep nvidia-driver 3) sudo apt remove nvidia-driver- sudo apt autoremove 4) sudo apt-get install nvidia-driver- sudo reboot now 하면 잘 되는 모습을 볼 수 있따!! * 안될 때 apt-get update하고 다시 하니까 됐다...
1) sudo ubuntu-drivers autoinstall 2) sudo nano /etc/default/grub #GRUB_GFXMODE=640x480 -> GRUB_GFXMODE=1920x1080 sudo update-grub sudo reboot +)혹시나 둘 다 안되는 사람이라면 https://sweetdev.tistory.com/951 이 방법을 확인해서 해결하는것도 좋아보인다!! 난 이렇게 해결했다 :) [출처] https://askubuntu.com/questions/441040/failed-to-get-size-of-gamma-for-output-default-when-trying-to-add-new-screen-res Failed to get size of gamma for outpu..