- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 투포인터
- 싸피
- 삼성역량테스트
- 삼성청년sw아카데미
- tomtoc
- 삼성파우치
- 자바
- 등산로조성
- Java
- #충무로맛집#골목식당#스테이크#
- 아키텍처패턴
- 탐탁노트북파우치
- 코틀린
- Higher-Order
- 백준
- Kotlin
- lateinit
- kotiln
- nullalble
- MVVM
- 코딩테스트
- ssafy서울
- DataBinding
- 안드로이드#코틀린#디자인패턴#싱글턴패턴#개발#앱개발
- 탐탁삼성파우치
- bitmasking
- Android
- 비트마스킹
- 알고리즘
- 안드로이드
목록개발/알고리즘 (9)
공상하는 개발자
이름만 들어도 어려울 것만 같은 다익스트라... 컴퓨터 과학자 에츠허르 데이크스트라 이름을 따서 만들었다고 한다. (나도 내 이름을 딴 알고리즘 만들고 싶다...ㅎㅎ) 어쨌든 어렵다고 생각했던 다익스트라를 파헤쳐보자!~ 레스 기릿 다익스트라 알고리즘이란? -> 간단하게 하나의 정점에서 다른 점들로 가는 최단경로를 구하고 싶을 때 사용한다. (최단거리를 구하고 싶을 때 사용!) 시작점을 D로 잡고 나머지 점까지의 최단거리를 구해보자. D는 출발점이기 때문에 최단거리가 0이므로 0으로 초기화한다. D를 제외한 최적경로는 아직 연결이 안 돼있으므로 무한대로 초기화한다. A B C D D INF INF INF 0 INF 위에서 현재 최단거리가 가장 짧은 노드를 고른다. D번 노드이다. D번 노드에서 뻗어나가는 ..
4월 5일 일요일 라인 코딩 테스트에 응시했다. 인생에서 처음 보는 코딩 테스트는 아니었다. 작년 두세 번의 코딩 테스트를 신청을 했는데, 한 번은 그냥 문제 한번 읽고 못 푼다는 걸 느끼고 자버렸고, 두 번째는 신청은 했지만 아예 테스트를 보지 않았다. 세 번째는 기억도 안 난다. 결국 제대로 코딩 테스트를 보는 건 이번 2020 라인 코딩 테스트가 처음이었다. 알고리즘 준비를 조금씩 해왔다. 문제를 풀면서 점수를 올리고, 하나하나 풀어간다는 게 재미있었다. 그래서 이번 라인 코딩 테스트를 통해 내 실력을 점검해보고 싶었다. 문제에 대한 내용은 저작권이 있기 때문에 생략하도록 하겠다. 라인 코딩 테스트는 10:00 ~ 12:30 150분 동안 6문제를 풀어야 한다. 나는 목표를 4~5문제를 푸는 것으로..
알고리즘 문제를 접하다 보면 조합, 순열, 중복 조합, 중복순열을 필요로 하는 문제가 많다. 브루트 포스를 이용할 때 이러한 로직들을 많이 사용한다. 그래서 로직을 만들어놓고 사용하면 그때그때 필요한 로직을 갖다 쓸 수 있어서 문제 풀기에 용이하다. 그래서 정리도 하고 알려도 줄 겸 이렇게 포스팅을 시작한다... 기본적으로 static 배열로 static int[] arr = { 1, 2, 3, 4, 5 }; 선언했다고 생각하자. 조합 1,2,3,4,5 중에서 3개를 뽑는 것이다. 1,2,3과 1,3,2 가 똑같은 것으로 치는 것이다. 1,1,2는 조합으로 안친다. -> 총 개수 5개에서 3개를 뽑는 것이다.(순서는 상관없음.) 자바 코드 private static void makeCombination..
IT 관련 대기업이나 이름 있는 기업들은 대부분 코딩 테스트를 채용과정에 넣는다. 그래서 알고리즘을 공부를 많이 하게 되는데, 나는 학부생 때 알고리즘 공부를 그렇게 잘하는 학생이 아니었고 지금도 물론 아니다. 하지만 요즘 싸피에서 알고리즘 교육을 받으면서, 어떤 식으로 알고리즘 문제에 접근을 해야 하는지 조금은 깨우친 것 같다. 아직 알고리즘 초보이지만, 지금까지 배우고 느낀 내용들을 정리해보았다. (물론 나의 뇌피셜에서 나온 내용들이기에 참고만 하는 게 좋다.) 1. 문제를 많이 접하고 어떤 유형의 문제인지 파악하는 법을 익히자. 알고리즘에는 BFS, DFS, 그리디, DP, 순열, 조합, 부분집합, 재귀, 그래프 등 다양한 유형들의 문제들이 많다. 이러한 다양한 유형들은 많이 보고 풀다 보면 알 수..