Development/Algorithm, DataStructure(95)
-
배열(array)의 장단점
배열(array)의 장단점
-
VISUALGO - 싱가폴 대학에서 만든 알고리즘 학습 사이트
VISUALGO· 싱가폴 대학에서 만든 알고리즘 학습 사이트· 알고리즘을 시각적으로 학습하고 테스트할 수 있는 서비스· 컨트롤과 키보드를 통해 알고리즘의 수행 상태를 확인해 볼 수 있습니다. https://visualgo.net/ 맨처음에 있는 Sorting 알고리즘 카테고리를 선택한 경우가장 상단에 보면 Sorinting 카테고리에 속하는 알고리즘 목록을 확인할 수 있습니다. 해당 알고리즘을 선택한 후 좌측 하단에 보면 이 알고리즘으로 조작할 수 있는 메뉴가 오픈됩니다. 오른쪽에는 알고리즘이 수행되고 있을 때의 코드 변화를 표시해줍니다.위의 녹색은 설명이고 아래의 파란색은 코드부분입니다. 코드 부분은 특정 언어에 국한 되지 않고 모든 언어를 포괄할 수 있도록 pseudocode코드형태로 표시되어 집니다..
-
피보나치 수열 (Fibonacci Sequence)
피보나치 수열 (Fibonacci Sequence)피보나치 수열의 항들을 피보나치 수(Fibonacci Number)라고 부릅니다. https://ko.wikipedia.org/wiki/%ED%94%BC%EB%B3%B4%EB%82%98%EC%B9%98_%EC%88%98https://namu.wiki/w/%ED%94%BC%EB%B3%B4%EB%82%98%EC%B9%98%20%EC%88%98%EC%97%B4 피보나치 수는 0과 1로 시작하며, 다음 피보나치 수는 바로 앞의 두 피보나치 수의 합이 됩니다.0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, …
-
List vs Set vs Map
List vs Set vs Map
-
TreeMap<K, V> 클래스, Class TreeMap<K,V>, TreeMap의 생성자
TreeMap 클래스 · 이진검색트리(binary search tree)의 형태로 키와 값의 쌍으로 이루어진 데이터를 저장합니다. 검색과 정렬에 적합한 컬렉션 클래스입니다.· 키들의 모임을 얻어와야 키를 순차적으로 검색할 수 있습니다. · navigableKeySet 메소드는 키들이 모여있는 컬렉션 인스턴스의 참조 값을 반환합니다.· HashSet 이나 HashMap을 사용하던 도중 정렬기능이 필요할 때 정렬 기능을 지원해주는 TreeSet이나 TreeMap으로 변환해서 사용하는 것이 가능합니다. TreeSet의 경우에는 Comparator 인터페이스를 이용하여 구현해서 사용자가 직접 정렬을 구현할 수 있습니다. Class TreeMaphttps://docs.oracle.com/javase/8/docs/..
-
해싱(Hashing), 해싱을 구현한 컬렉션 클래스(Java), 해싱 자료구조
해싱(Hashing)해싱은 해시함수(hash function)을 사용하여 데이터를 해시테이블(hash table)에 저장하고 검색하는 기법입니다.해시 함수는 데이터가 저장되어 있는 곳을 가리켜주기 때문에 다량의 데이터 중에서 원하는 데이터를 빠르게 찾을 수 있도록 해 줍니다. 해싱을 구현한 컬렉션 클래스(Java)HashSet, HashMap, Hashtable등이 있습니다. Hashtable은 컬렉션 프레임워크가 도입되면서 HashMap으로 대체되었으나 이전 소스와의 호환성을 위해서 지원하고 있습니다. 해싱 자료구조해싱에서 사용하는 자료구조는 배열과 링크드 리스트이 조합으로 되어 있습니다.저장할 데이터의 키를 해시함수에 넣으면 배열의 한 요소를 얻게되고, 다시 그 곳에 연결되어 있는 링크드 리스트에 저..