잘못된 정보가 있다면, 꼭 댓글로 알려주세요(비로그인 익명도 가능).
여러분의 피드백이 저와 방문자 모두를 올바른 정보로 인도할 수 있습니다.
감사합니다. -현록
목록Study (51)
현록의 기록저장소
해시 함수. 어떤 입력값을 넣으면, 고유한 과정을 거치게하여 해시값(임의의 길이의 데이터)을 뱉는 함수. 우리가 아는 암호화 방식인 SHA512 등도 결국 해시 함수.. 해시 함수(hash function)는 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수이다. 해시 함수에 의해 얻어지는 값은 해시 값, 해시 코드, 해시 체크섬 또는 간단하게 해시라고 한다. https://ko.wikipedia.org/wiki/%ED%95%B4%EC%8B%9C_%ED%95%A8%EC%88%98 해시 함수 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 이름을 0~15 사이의 정수값으로 매핑하는 해시 함수의 예. “John Smith”와 “Sandra Dee”라는 두 키 사이에 충돌이 존..
이미 Quick Sort와 Merge Sort를 살펴봤지만, [Study/Algorithm] - 정렬 - 퀵 정렬 [Study/Algorithm] - 정렬 - 합병 정렬 시간복잡도를 보는 겸 버블 정렬도. https://ko.wikipedia.org/wiki/%EA%B1%B0%ED%92%88_%EC%A0%95%EB%A0%AC 거품 정렬 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 무작위 배열수의 거품 정렬 예 거품_정렬 편집된 색상 거품 정렬(Bubble sort)은 두 인접한 원소를 검사하여 정렬하는 방법이다. 시간 복잡도가 O ( n 2 ) {\displaystyle O(n^{2})} 로 상당히 느리지만, 코드가 단순하기 때문에 자주 사용된다. 원소의 이동이 거품이 수면으로 ..
연산자 오버로드 https://docs.microsoft.com/ko-kr/cpp/cpp/operator-overloading?view=vs-2019 증가 및 감소 연산자 오버로드 https://docs.microsoft.com/ko-kr/cpp/cpp/increment-and-decrement-operator-overloading-cpp?view=vs-2019 연산자를 사이에 두고 피연산자가 1개면 단항연산자, 2개면 이항연산자. [단항연산자일 경우] (연산자)(피연산자) or (피연산자)(연산자) ㆍfriend: 신경쓰지 않음. 어차피 피연산자가 1개라면 무조건 해당 클래스일테니. ㆍreturn type: 대상이 피연산자 자신? 맞으면 참조형(Vector&)으로 자신(*this) / 아니면 일반클래스..
일반상속으로 깊이로 파고든 게 아닌, 다중상속으로 옆으로 나란히 생기는 레이아웃에서는, 소멸자가 필히 가상소멸자(virtual desctructor)이어야 한다. 그렇지 않으면 Invalid address specified to RtlValidateHeap 예외가 발생한다. 멤버 메서드는 개체 메모리 레이아웃이 아닌, 별도 메모리에 공용으로 위치한다. static 멤버 메서드도 더더욱 마찬가지. (멤버 메서드는 어셈블리단에서 첫 매개변수를 호출한 개체 자신으로 하여 연산하지만, static 멤버 메서드는 클래스 공용이므로 상관않고 공용 연산을 실시한다.) 가상 함수가 존재하지 않으면, 가상테이블은 개체 메모리 레이아웃에 생겨나지 않는다. 가상 함수가 존재하면, 4바이트로 가장 최하위(offset=0)에 ..
123 456 789 암호 패턴. 이미 사용한 번호를 다시 사용할 수 없음. 사용되지 않은 번호를 건너뛰어 매길 수 없음. (1-5-9-6-3-7은 가능하지만, 1-9-6-3처럼 1-9에서 사용하지 않은 5를 건너뛸 수 없음.) 각 직선(1-5,5-9,9-6,6-3,3-7)이 만나는 다른 직선의 수를 반환. 문제의 형태 때문에, getX와 getY에서 123456789를 쓰게 되는 것. 이와 상관없이 x, y 값만 주어져도 아래의 함수 계산은 항상 유효함. 1차 함수는 모두 y = a*x + b의 형태로 나타낼 수 있음. y - yj = s(x - xj) 에서, y = s*x -s*xj+yj 가 될 수 있기 때문. class Line { boolean isLinearX; boolean isLinearY;..
누구나 쉽게 이해할 수 있는 Git 입문 https://backlog.com/git-tutorial/kr/contents/ 목차 | 누구나 쉽게 이해할 수 있는 Git 입문~버전 관리를 완벽하게 이용해보자~ | Backlog 목차 | 누구나 쉽게 알 수 있는 Git에 입문하신 것을 환영합니다. Git을 사용해 버전 관리를 할 수 있도록 함께 공부해봅시다! backlog.com C++ Reference https://ko.cppreference.com/w/cpp https://en.cppreference.com/w/ cppreference.com Null-terminated strings: byte − multibyte − wide en.cppreference.com Java 11 API https://d..