알고리즘 공부 시작 8/22
왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다.아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지
이 글을 쓰는 이유가 알고리즘 공부를 많이 안하다 보니 for문을 만들어야 되는 상황일 때 항상 난감해지는 것 같다. 개발자인데 for문에 약하면 안될 것 같아. 그래서..for문을 생각할 텐데, row 40부터 64까지 .slice(index, index + 14)로
인프런 JS 알고리즘 문제풀이 5-2 다시 풀어보기
창문이 슬라이딩 한다아아
DepthFirstSearch 문제이다. 가장 긴 길이는 다 둘러 봐야 알수 있다. leetcode에는 root 파라미터로 그림에 나온 트리 객체를 전달해준다. 다만 난 그걸 모르고 트리까지 해야 되는 줄 알았지만, 그래서 다시 짜보려 한다. DFS고 Inorder s
Validate Binary Search TreeMediumGiven the root of a binary tree, determine if it is a valid binary search tree (BST).A valid BST is defined as follow
binary search, 이진 탐색을 js로 구현해보겠다. 이진탐색은 정렬된 배열을 search하는 알고리즘이다.이진탐색은 간단히 설명하자면, 3 pointer 즉, leftIndex, midIndex, rightIndex 3가지 포인터를 가지고 구현을 한다.1\.
leetcode 1110번 문제 :이진 트리에서 노드 삭제 후 배열에 넣어 return 하기
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.According to the definition of LCA on Wikipedia: “The lowest
트라이는 자료구조의 탐색트리의 일종으로 문자열 탐색을 아주 빠르게 해주는 자료구조이다.트리의 루트부터 자식들을 따라가며 생성한 문자열로 이루어 지며, 하나의 단어가 되면 끝을 표시하는 변수 end mark를 저장하여 단어의 끝을 구분할 수 있다.장점 : 단순 리스트 저
문제 풀면서 로직은 맞는데, return을 위와 같이 후위연산으로 줬더니만 결과가 0,0,0.. 으로 나옴 https://barker.codes/blog/prefix-vs-postfix-operators-in-vanilla-js/ 위 사이트에서도 나와 같은 실
제목 그대로 재귀에서 제약 조건은 재귀함수 상위에 설정해준다.
위 코드 처럼 checked\[node]형태로 checked\["A"] 형태로 조건을주니 항상 undefined가 떠서 알고리즘 에러가 남.아래 사진 처럼 배열은 '0', '1', '2'.. 인덱스를 키로 갖는 객체이다. 따라서 배열에서 포함하는지를 알고 싶으면 arr
알고리즘 DFS 문제 풀다가 아웃풋이 이상하게 안나오길래 하나하나 체크하고 의심하다가 결국 마지막에 찾은 점이 변수 할당부분 이었다. 사진에 나온것 처럼 원래 dfs 함수에서 종료조건에 걸리면 그 해당 인덱스 x, y는 사용되지 않고 그 전 인덱스 x, y를 사용해야
배열의 인덱스가 음수거나 요소의 개수를 초과하면 undefined가 뜸.그걸 조건식으로 사용하면 자동으로 false 값 처리가 됨.
2개 뿐 아니라 n개 가능출 : https://miiingo.tistory.com/364
Tries 알고리즘에 방식이 Tree를 build 해주고 주어진 문자열을 search 해주는건데, search 부분에 핵심 하나만 말하라면 아래 부분이다. root 즉 key-value 의 자료 트리 객체 형태에서 해당 요소를 찾았으면 그 찾은 지점을 반환해서 재 활당
문제 설명당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라
배열에서 최대값 내는건 Math.max(...array) 하면 되고최대값 인덱스는 for문 돌려서 max===array\[i] 이렇게 조건걸어주면 된다.