성장일기

내가 보려고 정리하는 공부기록

분류 전체보기 171

[Data Structure] CHAP 5. Stack and Queues (스택 & 큐) - C언어 ver.

이번 챕터에서는 꽤나 중요한 자료구조형태인 스택과 큐를 아래와 같은 순서대로 작성할 것이다. ✅ 스택의 원리 ✅ 스택의 ADT와 알고리즘코드 ✅ 큐의 원리 ✅ 큐의 ADT와 알고리즘코드 1. Stacks (스택) 스택은 한 쪽 끝에서 데이터를 넣고 뺄 수 있는 구조를 의미한다. 아래 그림과 같이 스택의 아래 부분을 bottom, 윗 부분을 top 이라고 칭하며, 데이터를 넣고 빼는 것은 top에서만 이루어진다. 스택은 후입선출(lifo, last in first out) 방식으로 처리된다는 특징이 있다. 1-1. stack ADT 스택을 ADT로 나타낸다면 아래와 같이 쓸 수 있다. ADT Stack is objects : a finite ordered list with zero or more eleme..

자료구조 2023.07.14

[프로그래머스] 접미사 배열 (Arrays.sort()) - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 9 - (4) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다. 문자열 my_string이 매개변수로 주어질 때, my_string의 모든 접미사를 사전순으로 정렬한 문자열 배열을..

[프로그래머스] 문자열 여러 번 뒤집기 (String.valueOf vs toString) - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 8 - (5) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 문자열 my_string과 이차원 정수 배열 queries가 매개변수로 주어집니다. queries의 원소는 [s, e] 형태로, my_string의 인덱스 s부터 인덱스 e까지를 뒤집으라는 의미입니다. my_string에 queries의 명령을 순서대로 처리한 후의 문자열을 return 하는 solution 함수를 작성해..

[프로그래머스] 9로 나눈 나머지 (char to int) - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 8 - (4) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 음이 아닌 정수를 9로 나눈 나머지는 그 정수의 각 자리 숫자의 합을 9로 나눈 나머지와 같은 것이 알려져 있습니다. 이 사실을 이용하여 음이 아닌 정수가 문자열 number로 주어질 때, 이 정수를 9로 나눈 나머지를 return 하는 solution 함수를 작성해주세요. 입력 #1 | "78720646226947352..

[Data Structure] CHAP 4. Sparse Matrices(희소행렬) - C언어 ver.

학교 강의 2번째 강의자료 마지막 학습 키워드 Sparse Matrix이다. 그냥 matrix는 1학년 2학기 전산통계학시간에 배워서 알고 있었으나 sparse matrix는 생소했다. 이번 챕터에서는 ✅ Sparse Matrix란? ✅ Sparse Matrix의 ADT와 표기법 이 두가지를 학습할 예정이다. 1. Sparse Matrix Sparse는 사전적으로 '드문, 희박한'의 뜻을 가지고있다. 즉, 가치있는 값을 가지고 있는 항이 적은 매트릭스를 의미한다. matrix : 값이 숫자인 배열이 행과 열 형태로 이루어져있는 데이터구조의 종류이다. sparse matrix : matrix중에서 값이 0인 요소들이 많은 매트릭스를 의미한다. 값이 0인 요소가 많으면 메모리 낭비가 심해질 수밖에 없다. 6..

자료구조 2023.07.10

[프로그래머스] 카운트 업 (IntStream) - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 7 - (3) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181920 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 정수 start와 end가 주어질 때, start부터 end까지의 숫자를 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요. 입력 #1 | start 3 end 10 출력 #1 | [3, 4, 5, 6, 7, 8, 9, 10] >> 풀이 range(start,end) 예를 들어 range(1,4)..

[프로그래머스] 배열 만들기2 ( Array to List, List to Array ) - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 7 - (2) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181921 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 정수 l과 r이 주어졌을 때, l 이상 r이하의 정수 중에서 숫자 "0"과 "5"로만 이루어진 모든 정수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요. 만약 그러한 정수가 없다면, -1이 담긴 배열을 return 합니다. 입력 #1 | l = 5 r = 555 출력 #1 | [5,5..

[프로그래머스] 수열과 구간 쿼리 2 - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 6 - (5) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181923 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 정수 배열 arr와 2차원 정수 배열 queries이 주어집니다. queries의 원소는 각각 하나의 query를 나타내며, [s, e, k] 꼴입니다. 각 query마다 순서대로 s ≤ i ≤ e인 모든 i에 대해 k보다 크면서 가장 작은 arr[i]를 찾습니다. 각 쿼리의 순서에 맞게 답을 저장한 배열을 반환하는 so..

[Data Structure] CHAP 3. Polynomials (다항식) - C언어 ver.

지난 챕터 Arrays에 이어 이번 챕터에서는 Polynomials에 대한 내용을 기록하려 한다. 사실 앞의 내용들은 전부 익숙한 내용이었는데, polynomial은 처음 듣는 키워드라 걱정이 조금 됐었다. 그런데 막상 배워보니까 크게 어려운 개념은 아니라는 점!! 어쨋든 이번 챕터에서는 ✅ polynomial의 개념알기 ✅ polynomial을 ADT로 표현하기, ADT를 참고해 구현하기 를 해보려고 한다. 1. Polynomial이란? polynomial은 쉽게 간단히 말하면 다항식이다. 다항식을 이차원 배열의 형태로 표현하며, coef와 exp를 써준다. 이때, coef는 항의 계수이며 exp는 차수를 의미한다. 즉, Polynomial A = [[2,1000],[1,0]] 이라면 2Χ^1000 +..

자료구조 2023.07.07

[프로그래머스] 수 조작하기1 - JAVA

프로그래머스 _ 코딩 기초 트레이닝 DAY 6 - (2) 출처 - https://school.programmers.co.kr/learn/courses/30/lessons/181926 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 | 정수 n과 문자열 control이 주어집니다. control은 "w", "a", "s", "d"의 4개의 문자로 이루어져 있으며, control의 앞에서부터 순서대로 문자에 따라 n의 값을 바꿉니다. "w" : n이 1 커집니다. "s" : n이 1 작아집니다. "d" : n이 10 커집니다. "a" : n이 10 작아집..

728x90