본문 바로가기

IT개발41

알고리즘 : 버블 정렬(Bubble sort) 정렬(sorting) 은? 어떤 데이터들이 주어졌을 때 이를 정해진 순서대로 나열하는 것 프로그램 작성 시에 자주 필요로 함 버블 정렬(bubble sort)은? 두 인접한 데이터를 비교해서 앞에 있는 데이터가 뒤에 있는 데이터보다 크면 자리를 바꾸는 정렬 알고리즘 데이터가 4개일 때 버블 정렬 알고리즘 방식 예시 data_list = [1, 8, 4, 3] - 1차 로직 적용 - 1과 8 비교, 자리바꿈 없음 [1, 8, 4, 3] - 8과 4 비교, 자리바꿈 있음 [1, 4, 8, 3] - 8과 3 비교, 자리바꿈 있음 [1, 4, 3, 8] - 2차 로직 적용 - 1과 4 비교, 자리바꿈 없음 [1, 4, 3, 8] - 4와 3 비교, 자리바꿈 있음 [1, 3, 4, 8] - 4와 8 비교, 자리바.. 2021. 8. 19.
명언테스트 : MBTI테스트 성격테스트 만들기 나를 표현하는 명언은 무엇일까? MBTI를 기반으로 성격테스트인 명언테스트를 만들었다. 유형별로 나를 표현하는 명언을 알아볼 수 있다. https://famous-saying-test.netlify.app 명언테스트 MBTI를 기반으로 나의 성격, 성향에 어울리는 명언을 알려주는 테스트, 나를 표현하는 명언을 찾아보세요! 다양한 언어로 번역이 가능하고 회원가입 필요없이 바로 확인이 가능합니다. 나를 나타 famous-saying-test.netlify.app html | css | javascript 를 이용해 코드를 작성했다. google api를 이용해 언어를 다양하게 선택할 수 있도록 구현했다. 12가지 질문을 구성, 답변은 2가지 중 1개를 선택할 수 있도록 했다. (key와 value값으로 구성.. 2021. 8. 17.
자료구조 : 힙(Heap) 힙(Heap) 데이터에서 최대값과 최소값을 빠르게 찾기 위해 고안된 완전 이진 트리(Complete Binary Tree) 완전 이진 트리 : 노드를 삽입할 때 최하단 왼쪽 노드부터 차례대로 삽입하는 트리 힙(Heap)을 사용하는 이유 배열에 데이터를 넣고, 최대값과 최소값을 찾으려면 O(n)이 걸림 힙에 데이터를 넣고, 최대값과 최소값을 찾으면 O(logn)이 걸림 우선순위 큐와 같이 최대값 또는 최소값을 빠르게 찾아야 하는 자료구조 및 알고리즘 구현 등에 활용됨 힙(Heap)의 구조 힙은 최대값을 구하기 위한 구조와 최소값을 구하기 위한 구조로 분류할 수 있음 각 노드의 값은 해당 노드의 자식 노드가 가진 값보다 크거나 같다. (최대 힙의 경우) 최소 힙의 경우는 각 노드의 값은 해당 노드의 자식 노.. 2021. 8. 16.
자료구조 : 트리(Tree) 트리(Tree) 구조 트리 : 노드(Node)와 Branch를 이용해서 사이클을 이루지 않도록 구성한 데이터 구조 이진트리(Binary Tree) 형태의 구조이며 검색(탐색) 알고리즘 구현을 위해 사용됨 용어 Node : 트리에서 데이터를 저장하는 기본요소 Root Node : 트리 맨 위에 있는 노드 Level : 최상위 노드를 Level 0으로 하였을 때, 하위 Branch로 연결된 노드의 깊이를 나타냄 Parent Node : 어떤 노드의 다음 레벨에 연결된 노드 Child Node : 어떤 노드의 상위 레벨에 연결된 노드 Leaf Node : Child Node가 하나도 없는 노드 Sibling (Brother Node) : 동일한 Parent Node를 가진 노드 Depth : 트리에서 Node.. 2021. 8. 14.