본문 바로가기
  • Adillete

【스터디노트】38

99클럽 코테 스터디 9일차 TIL + 오늘의 학습 키워드 문자열/해시 - 오늘의 학습 키워드 문자열/해시 - 공부한 내용 본인의 언어로 정리하기문자열 num에서 각 숫자가 몇번 등장하는지 센다.각 인덱스 i 에 대해서 숫자가 i 가 num 에서 num[i] 번 등장하는지 확인한다.수도 코드function digitCount(num): n = 길이(num) // 각 숫자의 등장 횟수를 저장할 배열 counts = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] // 각 숫자의 등장 횟수 세기 for i = 0 to n-1: digit = num[i]를 정수로 변환 counts[digit]++ // 각 인덱스에 대해 조건 확인 for i = 0 to n-1: expected.. 2025. 4. 9.
99클럽 코테 스터디 7일차 TIL + 오늘의 학습 키워드 스택 - 오늘의 학습 키워드 : 스택- 공부한 내용 본인의 언어로 정리하기단어의 수를 N을 입력하면n개의 단어를 하나씩 처리하는데 스택을 초기화하고현재 글자와 스택 맨위에 있는 글자가 같을때 pop하고다를때 push 한다.모든 글자 처리후 스택이 비어있으면 좋은 단어이고좋은 단어 개수를 계산하여 출력한다.- 오늘의 회고   - 어떤 문제가 있었고, 나는 어떤 시도를 했는지 " 선이 교차하지 않는 " 이 어떻게 문제에 적용되는지 한참 고민했다.  - 어떻게 해결했는지스택은 LIFO으로 맨 마지막에 들어간 문자랑 다음 들어갈 문자를 비교할수 있는데이 경우 맨 마지막 글자가 그다음 들어갈 문자와 같을때 pop을 해버리면 선이 교차하지 않고 가장 가까운 글자끼리 묶어서 계산할 수 있다.   - 무엇을 새롭게 알았는지.. 2025. 4. 8.
99클럽 코테 스터디 6일차 TIL + 오늘의 학습 키워드 동적 프로그래밍 - 오늘의 학습 키워드 동적 프로그래밍 (dynamic)- 공부한 내용 본인의 언어로 정리하기(출처: leetcode)70. Climbing StairsYou 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? 문제 조건: 한번 올라갈때 1걸음 또는 2걸음 오를수 있다. 수도 코드함수 climbStairs(n): // 기본 케이스 만약 n = 1이면 1 반환 만약 n = 2이면 2 반환 // 각 계단에 도달하는 방법의 수를 저장할 배열 생성 dp.. 2025. 4. 7.
99클럽 코테 스터디 5일차 TIL + 오늘의 학습 키워드 스택과 큐 - 오늘의 학습 키워드 스택과 큐- 공부한 내용 본인의 언어로 정리하기 문제의 목적: 큐 구조를 스택 구조로 변경한다.기본적인 아이디어: 큐는 FIFO 구조 이고스택은 LIFO 구조여서 큐 2개를 이용해서 queue1에 있는 값을 queue2 에 마지막 하나만 제외하고 이동시킨다.마지막 하나를 top 메서드를 읽고 topElement를 반환한다. 수도 코드클래스 MyStack: 큐 queue1, queue2 선언 생성자 MyStack(): queue1을 새 큐로 초기화 queue2를 새 큐로 초기화 함수 push(x): queue1에 x 추가 함수 pop(): queue1의 크기가 1보다 큰 동안: .. 2025. 4. 4.
99클럽 코테 스터디 4일차 TIL + 오늘의 학습 키워드: 스택과 큐 - 오늘의 학습 키워드: 스택과 큐- 공부한 내용 본인의 언어로 정리하기스택 두개로 pop push 만들기원래 스택은 LIFO() 라서 FIFO로 쓰기 위해 두개의 스택을 준비하고stackOut이 비었다고 확인되면 stackIn의 요소를 stackOut으로 보낸다.있는지 없는지는 peek() 메서드를 통해서 파악하고 stackOut이 100% 옮겨져서FIFO 가 적용된 pop()을 사용할 수가 있다.- 오늘의 회고   - 어떤 문제가 있었고, 나는 어떤 시도를 했는지public int pop() { peek(); return stackOut.pop();}이 부분을 잘못 만들어서 한참 헤맸다.  - 어떻게 해결했는지이 부분을 못만들어서 gpt의 도움을 받았다. -peek() 메서드의 호출 : s.. 2025. 4. 3.
99클럽 코테 스터디 3일차 TIL + 오늘의 학습 키워드 문자열 오늘의 학습 키워드 : 문자열- 공부한 내용 본인의 언어로 정리하기ⓐsc.nextLine(); 으로 개행 문자를 소비하여 다음 입력을 정확히 할수 있다ⓑin number =-1;로 하면 0,1을 사용하지 않고 초기화 할수 있다.ⓒ-1 =>오류 검출도 가능만약 어떤 이유로 코드가 숫자를 읽지 못한 경우(예: 입력 형식이 잘못된 경우), 변수 값이 여전히 -1이라면 이는 문제가 있다는 신호로 사용할 수 있다.1단계: 접두사 느낌표를 카운트한다.2단계: 숫자를 읽는다.3단계: 팩토리얼을 센다.- 오늘의 회고  - 어떤 문제가 있었고, 나는 어떤 시도를 했는지!0=1 을 함수로 만들어야하는데 이 부분을 이해 못하고 에러났다.  - 어떻게 해결했는지// 논리 반전 계산 함수: !npublic static int .. 2025. 4. 2.