전체 글 151

141. Linked List Cycle

https://leetcode.com/problems/linked-list-cycle/description/ Set에 ListNode를 저장해서 count 개수와 set의 size가 다르면 사이클이 있다고 판단하였다. /** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */ /** 1. 문제 해석하기 head가 주어지는데 이 링크드리스트에 사이클 존재 여부를 반환한다. 노드의 개수는 0부터 10000개까지 2. 문제 풀이 방향 모든 노드를 Set에 저장하면서 노드를 추가했는데도 Set의 개수가 변하지 않으..

코딩테스트 2024.01.29

21. Merge Two Sorted Lists

https://jaime-note.tistory.com/262 머리가 나빠서 node와 node를 연결하지 못하고 있다. 풀이 중 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, ListNode next) { this.val = val; this.next = next; } * } */ /* 1. 문제 해석하기 정렬된 링크드 리스트가 list1, list2가 주어지고 이 리스트를 합쳐서 정렬된 형태의 리스트로 반환해줍니다. 2. 문제 풀이 방향 list..

코딩테스트 2024.01.29

235. Lowest Common Ancestor of a Binary Search Tree

링크 참고한 코드 풀이 코드 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } * * 1. 문제 해석하기 * 이진 탐색 트리의 가장 낮은 공통 조상을 찾아달라는 문제입니다. * 2. 문제 풀이 방법 * TreeNode를 따라 내려간다. * left의 val 혹은 right의 val이 p혹은 q일 경우 그 다음 값도 확인한다. * 조상이 p 혹은 q 인 경우도 있기 때문에 해당 경우도 고려한다. * 같은 숫자를 가진 노드는 없다. * * p의 조상 목록과 q의 조상 목록을 찾는다. (가장 처음은..

코딩테스트 2024.01.28

Valid Palindrome

Valid Palindrome https://leetcode.com/problems/valid-palindrome/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 풀이 방법 replaceAll을 사용해서 공백, 특수문자 제거 후 대문자로 변환하였다. 그리고 앞에서부터 하나씩 비교하는 방법 선택 다 해도 O(n)이고 문자열의 최대 길이가 2 * 10^5 라고 ..

코딩테스트 2024.01.18

Rust Cargo

Cargo 카고란 러스트의 빌드 시스템이자 패키지 매니저이다. 사용하고자 하는 패키지의 의존 라이브러리를 다운로드하고 빌드, 버전 관리해주는 역할을 한다. 대부분의 러스트를 사용하는 사람들이 카고를 사용하기 때문에 그대로 사용하면 된다. Cargo 설치 확인 rustup을 설치했다면 cargo도 같이 설치된다. $ cargo --version 실행 화면 Cargo 프로젝트 생성 $ cargo new hello_cargo --bin 실행 화면 Cargo 컴파일 및 실행 관련 명령어 cargo 빌드 $ cargo build cargo 실행파일 실행 $ ./target/debug/hello_cargo $ cargo run 실행 화면 빌드 + ./target/debug/hello_cargo cargo run c..

공부공부 2023.11.04

Rust 설치 및 Hello World 출력

Rust 설치 공홈에도 나와있지만 제일 선호되는 러스트 설치방법은 Rustup이라는 커맨드 도구를 이용하는 것 그 이외 방법도 있다고 나와있음. rustup rustup이란 러스트 버전 관리 및 관련 도구를 위한 커맨드 라인 도구 rustup 설치과정 $ curl https://sh.rustup.rs -sSf | sh 위의 명령어를 입력하면 아래와 같이 설치가 된다. 위의 화면에서 설치 옵션을 선택할 수 있는데 default로 설치를 진행했다. (1 입력) 위의 과정까지 마쳤다면 러스트 설치가 완료되었다. 옵션 터미널 재시작 없이 곧바로 러스트를 쓰고 싶다면 위의 명령어를 입력해서 시스템 패스에 곧장 추가하는 방법이 있다. $ source $HOME/.cargo/env 터미널 종료 후 재시작하면 다음 로..

공부공부 2023.11.04

[leetcode] 46. Permutations

https://leetcode.com/problems/permutations/description/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 해석 배열이 주어지면 순열을 아무 순서로나 반환하면 되는 문제였다. 통과 코드 풀이: Back-tracking 백트래킹을 이용해서 이미 사용한 인덱스인지 체크했고 체크해야하는 인덱스 순서를 파라미터로 보내서 ..

코딩테스트 2023.09.16

[leetcode] 45. Jump Game II

https://leetcode.com/problems/jump-game-ii/description/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 해석 점프 게임을 할 건데 게임 종료 조건은 배열의 맨 끝에 가장 적게 뛰어서 도착하는 것이고 배열에 나와있는 숫자보다 작거나 같게 뛸 수 있다. 예를 들어 nums = [2, 3, 1, 4, 4] 라는 배열..

코딩테스트 2023.09.16