[항해99 취업리부트 TIL] 3주차 2일
·
스케쥴/스터디
오늘 진행된 강의에서 학습한 내용은 무엇인가요?힙, 해시 테이블, 자료구조 활용 알고리즘 문제 정리 및 심층 분석1. 힙 (Heap)개념:힙은 완전 이진 트리 구조의 일종으로, 각 노드가 자식 노드보다 크거나 작은 우선순위를 가지는 자료구조입니다. 우선순위 큐(Priority Queue)를 구현하기 위해 사용됩니다.특징:최대 힙 (Max Heap): 부모 노드가 자식 노드보다 항상 크거나 같습니다.최소 힙 (Min Heap): 부모 노드가 자식 노드보다 항상 작거나 같습니다.삽입 및 추출: O(log N) 시간 복잡도탐색: O(N) 시간 복잡도장점:빠른 삽입 및 추출우선순위 기반 데이터 처리에 효율적단점:순서 기반 데이터 처리에는 적합하지 않음삽입 및 추출 시 트리 구조 재구성 필요시간 복잡도:삽입 및 ..
[항해99 취업리부트 TIL] 2주차 6일
·
스케쥴/스터디
항해99 리부트 알고리즘 1주차의 첫 알고리즘 코테를 진행하였다. 4개중 2개를 풀고 이를 복기해본다. 오늘 진행된 강의에서 학습한 내용은 무엇인가요?[백준] 스위치켜고끄기 - 1244https://www.acmicpc.net/problem/1244 스위치 배열 상태 변경 프로그램의 핵심 로직을 분석합니다. 이 로직은 학생들의 명령에 따라 스위치의 상태를 변경하는 기능을 수행합니다.1. 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.StringReader;import java.util.StringTokenizer;public class Main { stat..
[항해99 취업리부트 TIL] 2주차 5일
·
카테고리 없음
오늘 진행된 강의에서 학습한 내용은 무엇인가요?자바의 이차원 배열1. 개요이차원 배열은 행과 열로 구성된 데이터 구조입니다. 각 행은 여러 개의 열로 구성되며, 각 열은 하나의 값을 가지고 있습니다. 이는 격자 형태로 데이터를 표현하는 데 유용하며, 표, 행렬, 게임 보드 등 다양한 상황에서 활용됩니다.2. 이차원 배열 선언 및 초기화이차원 배열은 다음과 같은 방식으로 선언 및 초기화할 수 있습니다.// 선언int[][] array = new int[행의 수][열의 수];// 초기화array[0][0] = 10; // 첫 번째 행 첫 번째 열에 10 저장array[1][2] = 20; // 두 번째 행 세 번째 열에 20 저장위 코드는 array라는 이름으로 5행 3열의 이차원 배열을 선언합니다. new..
[항해99 취업리부트 TIL] 2주차 4일
·
스케쥴/스터디
오늘 진행된 강의에서 학습한 내용은 무엇인가요? 1. 문자열 뒤집기 (Reverse String): - 주어진 문자열의 문자 순서를 반대로 만드는 작업입니다. - StringBuilder를 사용한 방법, 반복문을 사용한 방법, 비효율적인 방법을 각각 설명하였습니다. 2. 문자열 압축 (String Compression): - 주어진 문자열에서 반복되는 문자를 숫자로 표현하여 압축하는 작업입니다. - StringBuilder와 반복문을 사용하여 문자열을 압축하는 방법을 설명하였습니다. 3. 문자열의 모든 순열 찾기 (Find All Permutations of a String): - 주어진 문자열의 모든 가능한 순열을 생성하는 작업입니다. - ..
[항해99 취업리부트 TIL] 2주차 3일
·
스케쥴/스터디
오늘 진행된 강의에서 학습한 내용은 무엇인가요?요약1. 자바 표준 라이브러리 활용Math 클래스: 제곱근 계산, 절대값 계산 등 수학 관련 함수 제공Collections 유틸리티 클래스: 컬렉션 프레임워크 관련 유틸리티 함수 제공 (예: 리스트 정렬)Random 클래스: 난수 생성 (범위 지정 가능)LocalDateTime 클래스: 날짜와 시간 처리 (현재 날짜/시간, 특정 형식으로 변환)Arrays 클래스: 배열 관련 유틸리티 메서드 (예: 배열 정렬, 복사)2. String 함수 활용concat(): 두 문자열 연결trim(): 문자열 앞뒤 공백 제거startsWith()와 endsWith(): 문자열 시작/끝 확인contains(): 문자열 포함 여부 확인replace(): 문자열 내용 교체spli..
[백준]알고리즘의 수행 시간 2 - 24263번
·
여러가지/알고리즘 & 자료구조
[Bronze IV] 알고리즘 수업 - 알고리즘의 수행 시간 2 - 24263문제 링크느낀점어려웠음.왜? 처음 대충 문제 설명만 보고 입력 값과 출력 값을 보고 단편적으로 봤을 때, 입력값 7이 입력 되고 출력 값이 첫 줄에 7이 나오고 다음 1이 나오는 것을 보고 뇌정지가 왔다. 그리고 장황하게 설명된 문제 설명 을 보고 뇌정지가 왔다.차항? 이건 무슨 외국어인가 싶었다. 그 뜻을 알고자 구글링으로 검색했고 중학수학 개념이 설명되는 것을 보고 이거 삽질 하는건가 싶었다.제목을 보니 알고리즘의 수행시간2 이라고 했다. 순간 스치는 생각은 문제 설명에서 총합을 구하는 예시 코드로, n번 loop를 돌면서 1부터 n번까지 총합을 구하는 코드 스니펫과참고한 사이트https://medium.com/humansc..
[항해99 취업 리부트 TIL] 2주차 2일
·
스케쥴/스터디
[Bronze I] 회사에 있는 사람 - 7785문제 링크성능 요약메모리: ? KB, 시간: ? ms분류?제출 일자문제 설명상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다.각 직원은 자기가 원할 때 출근할 수 있고, 아무때나 퇴근할 수 있다.상근이는 모든 사람의 출입카드 시스템의 로그를 가지고 있다. 이 로그는 어떤 사람이 회사에 들어왔는지, 나갔는지가 기록되어져 있다. 로그가 주어졌을 때, 현재 회사에 있는 모든 사람을 구하는 프로그램을 작성하시오.입력첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지..
[항해99 취업 리부트 TIL] 2주차 1일
·
스케쥴/스터디
1️⃣ 2438번: 별 찍기 - 1난이도: 브론즈분류: 구현링크:2438번: 별 찍기 - 1코드import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int N = scanner.nextInt(); // String.format() 메서드를 사용하여서 문자열로 받도록 합니다. // 여기서 포인트는 repeat 메소드입니다. // repeat 메소드를 사용해서 이중 반복문을 명시적으로 사용하지 않았습니다. // 가독성이 좋고! 직관력이 ..