본문 바로가기

전체 글315

백준 [자바 java] 1238번 : 지름길 개념공부만 하니까 좀 지겨워서 백준을 풀었다. 문제설명https://www.acmicpc.net/problem/1238n명의 사람들이 있고, 그 사람들 사이를 지나다닐 때 걸리는 시간이 주어졌을 때, n명의 사람들 중 특정 사람(x)를 오고가는데 걸리는 시간이 가장 많은 사람의 시간을 구하는 문제이다 뭔가 외국어를 번역한 문제라 처음엔 이해가 좀 어려웠는데그냥 x까지 왕복하는 각각의 사람들에 대한 최소비용을 계산하고 이 최소비용의 최댓값을 구하면 되는 문제이다. 코드package org.example;import java.io.*;import java.util.*;public class Main { public static ArrayList> rode; public static int[][] ans;.. 2025. 2. 26.
[알고리즘 개념] 다익스트라(Dijkstra) 개념설명다익스트라 알고리즘은 노드와 노드의 사이 간선에 가중치가 있을 때 특정 노드에서 다른 노드로 가는 최단거리를 구하는 알고리즘이다.내가 기존에 알던 방식은배열에 각각의 최단거리 갱신 -> 배열에서 최솟값 찾기 -> 그 최솟값을 기준으로 다시 탐색하기 였는데여기서 가르친 방법은 배열에서 최솟값 찾는 과정의 효율성을 증가시키기 위해서 우선순위큐를 썼다.파이썬 코드로 되어있어서 처음에는 이해가 잘 되지 않았지만, 지피티의 도움을 받아 자바로 이해해보았다(확실히 파이썬이 간단하긴 하다.. 옮기고싶지만 가면 돌아올 수 없을것 같아 망설여진다ㅎㅎ) 이러한 노드와 간선들이 주어진다. 그 다음 시작 노드인 5를 기준으로 각 노드까지 가는데 얼마나 드는지를 나타내는 dist배열을 생성한다.시작노드인 5를 기준으로는.. 2025. 2. 24.
UCSD Qualcomm Institute AI Project 5주차 마지막 주차다이 주는화요일까지 논문, 워크플로우 제출수요일 위클리 프레젠테이션금요일 최종발표로 굉장히 바빴다ㅜㅜ 알고리즘시간관계상 하이퍼파라미터 종류가 많은 xgboost나 adaboost를 쓰는 것 보다 종류가 적은 lr과 랜덤포레스트를 활용하라는 피드백을 받고 이전에 했던 건 그냥 덮기로 했다.그래도 랜덤포레스트를 계속 시도하던 팀원이 있어서 다행이었다. 나는 lr을 중점적으로 다뤘다. Logistic Regression이번에도 유튜브와 지피티를 활용해서 공부해보았다. 박사님께서 lr은 하이퍼파라미터 조정이 필요없고, 컴버지때의 값이 하이퍼파라미터 값이라고 하셨다.컴버지가 뭐지...아는게 없으니 막막했다. 그래서 TA분께 여쭤봤다. 인도분이셨는데 내 허술한 영어도 친절하게 다 받아주셨고, 설명도 정말.. 2025. 2. 23.
UCSD Qualcomm Institute AI Project 4주차 사실 이제 한국에 왔다. 4주차랑 5주차는 너무너무 바빠서 바로바로 블로그를 쓰지 못했다ㅜㅜ지금이라도 쭉 정리해보려고 한다. 아 그리고 우리팀의 논문 1저자는 내가 되었다.. 잘 완성시켜야지 피쳐분석우리가 박스플롯, 파이차트 등으로 분석한 피쳐들을 가지고 박사님과 미팅을 하였다.이런식으로 30개의 피쳐를 모두 분석했다!박사님께서 이상치가 있는 것들은 그 값을 분석해서 정말 이상치인 것들은 제거하라고 하셨고 결측값이 많거나 예약 취소와 관련 없는 피쳐들은 빼라고 하셨다. 그리고 이 날 해결하지 못한 부분이런 것들은 추후 다시 분석해서 가져갔다알고리즘 공부이 주부터는 모델을 만들어보아야한다고 하셨다.그래서 조원마다 각자 공부하고 돌려볼 알고리즘들을 정해주었다.] 나는 XGBOOST와 ADABOOST를 공부하.. 2025. 2. 23.
코드트리 [java 자바] 수열조작 https://www.codetree.ai/trails/complete/curated-cards/challenge-sequence-manipulation/description?page=1&page_size=20 Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged Coding Learning Curriculum engineered by Algorithm Experts composed of former International Olympiad in Informatics (IOI) medalists.www.codetree.ai 문제설명이 문제는 덱을 연습하기 위해서 푼 문제이다.처음에 Last를 Back.. 2025. 2. 23.
[알고리즘 개념] Deque Deque란?deque는 덱이라고 불리고, 스택과 큐를 합쳐놓은 자료구조이다.스택, 큐와 달리 양 끝에서 삽입과 삭제가 모두 가능하다. 시간복잡도는 모두 O(1)이다!위와 같이 양쪽에서 push와 pop이 가능하니, 각 명령어 앞에 앞에서 빼는지, 뒤에서 빼는지를 적어두어야한다. Deque 사용법변수선언import java.util.Deque;import java.util.ArrayDeque;public class Main { public static void main(String[] args) { Deque dq = new ArrayDeque(); }}선언은 이런식으로 Deque으로 하면 된다. 값 넣고 빼기addFirst(E)맨 앞에 데이터 E를 추가합니다. addLast(E).. 2025. 2. 23.