[알고리즘/Java/Kotlin]BFS vs DFS
·
개발/알고리즘
BFS와 DFS는 그래프 탐색 알고리즘 중 대표적인 두 가지 방법입니다. 프로그래머스 문제를 풀다보면 해답으로 꼭 있는 것이 BFS 혹은 DFS입니다. 그런 문제를 풀 때마다 나에게 익숙한 DFS를 사용하여풀었는데, 정확한 개념 정리가 필요할 것 같아 정리해보았습니다. * 아래 코드 설명 - Node는 그래프의 노드를 나타내는 클래스 - 각 노드는 그래프 상에서 연결된 다른 노드들의 리스트를 가지고 있음 - start는 탐색을 시작할 노드를 나타내는 변수 - visited는 이미 방문한 노드들의 집합을 나타내는 변수 BFS (너비 우선 탐색) BFS(너비 우선 탐색)는 시작 정점으로부터 가까운 정점을 먼저 탐색하는 방법입니다. 즉, 현재 정점에서 인접한 정점을 큐에 추가하고, 큐에서 하나씩 뽑아 탐색을 ..
[개발 기본 개념]비트 연산자
·
개발/개념 및 기법
비트연산자란? 컴퓨터의 비트 단위로 데이터를 처리하는 연산자 비트연산자 예시 설명 & AND 0 & 0 == 0 0 & 1 == 0 1 & 1 == 1 두 비트의 값이 모두 1인 경우에만 1을 반환 | OR 0 | 0 == 0 0 | 1 == 1 1 | 1 == 1 두 비트 중 하나라도 1인 경우에는 1을 반환 ^ XOR 0 ^ 0 == 0 0 ^ 1 == 1 1 ^ 1 == 0 두 비트가 서로 다른 경우에 1을 반환 ~ NOT ~0 == 1 ~1 == 0 0이면 1을, 1이면 0을 반환 > b 비트를 오른쪽으로 지정된 수(b)만큼 이동 왼쪽에는 부호 비트가 추가되고, 오른쪽으로 벗어나는 비트는 버려짐 >>> UNSIGNED RIGHT SHIFT a >>> b 비트를 오른쪽으로 지정된 수만큼 이동 왼쪽에..
[LeetCode/Kotlin]Easy - 938. Range Sum of BST
·
LeetCode/Kotlin | Easy
[LeetCode/Kotlin]Easy - 938. Range Sum of BST Range Sum of BST - LeetCode Can you solve this real interview question? Range Sum of BST - Given the root node of a binary search tree and two integers low and high, return the sum of values of all nodes with a value in the inclusive range [low, high]. Example 1: [https://assets.l leetcode.com 문제 Given the root node of a binary search tree and two in..
[LeetCode/Kotlin]Easy - 70. Climbing Stairs
·
LeetCode/Kotlin | Easy
[LeetCode/Kotlin]Easy - 70. Climbing Stairs Climbing Stairs - LeetCode Can you solve this real interview question? Climbing Stairs - You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top? Example 1: Input: n = 2 Outpu leetcode.com 문제 You are climbing a staircase. It takes n steps to reach t..
[LeetCode/Kotlin]Easy - 2016. Maximum Difference Between Increasing Elements
·
LeetCode/Kotlin | Easy
[LeetCode/Kotlin]Easy - 2016. Maximum Difference Between Increasing Elements Maximum Difference Between Increasing Elements - LeetCode Can you solve this real interview question? Maximum Difference Between Increasing Elements - Given a 0-indexed integer array nums of size n, find the maximum difference between nums[i] and nums[j] (i.e., nums[j] - nums[i]), such that 0
뿌꾸 빵
개발새발 안드로그