본문 바로가기

스프라이트

(4)
[TIL]2024-4-04 / 64일차 - 최종 프로젝트 5주차 4일차 오늘의 코드카타는 오전에 피곤하여 시간 내에 다 풀지 못해서 다음으로 미뤄졌다. 1. 오늘의 기술 면접 자료구조의 종류는 무엇이 있으며 각각 어떤 차이점이 있는지 설명해주세요
[TIL]2024-4-03 / 63일차 - 최종 프로젝트 5주차 3일차 1. 오늘의 알고리즘 코드카타 - 대충 만든 자판 답안 : using System; using System.Collections.Generic; public class Solution { public int[] solution(string[] keymap, string[] targets) { var dict = new Dictionary(); for(int i = 0; i < keymap.Length; i++) { string keyStr = keymap[i]; for(int k = 0; k < keyStr.Length; k++) { char c = keyStr[k]; dict[c] = dict.ContainsKey(c) ? Math.Min(k, dict[c]) : k; } } // dictionary에..
[TIL]2024-3-14 / 56일차 - 최종 프로젝트 2주차 4일차 1. 오늘의 기술 면접 질문 - 가비지 컬렉션이란 무엇인지 설명해주세요 가비지 컬렉션은 더 이상 참조되지 않은 객체를 해제하여 메모리 누수를 방지하는 프로세스입니다. 모든 메모리를 순회하는 것보다 효율적인 관리를 위해 3세대의 힙 메모리로 나뉘어 관리되는데, 새로 만든 개체는 0세대 메모리에 할당되며 이것이 넘치게 되면 가비지 컬렉션이 일어나고 아직 참조되고 있는 객체들(라이브 객체들)은 오래된 순서대로 1세대 -> 2세대로 승격되는데 2세대로 갈 수록 할당되는 메모리가 커지게 됩니다. 만약 2세대 메모리도 넘치게 된다면 모든 세대에 대한 기비지 컬렉션이 실행되게 됩니다. 이때는 프로그램이 멈추며 가비지 컬렉션이 진행되기 때문에 이러한 일이 일어나지 않도록 유의해야 합니다. 가비지 컬랙션의 과정은 크게 ..
[TIL]2024-2-13 / 35일차 - 팀 과제 2일차 1. 오늘의 알고리즘 코드카타 - 크기가 작은 부분문자열 답안 : //제한 사항 p 길이를 보면 int 말고 long 필요 //p와 값을 비교시키기 위해선 long.Parse(p)와 비교 시켜야함 //세글자로 묶는걸 삼총사 풀이랑 비슷하게 해야하나 //Substring이란걸 찾았다. 이걸 써봐야 할지도. //필요사항 : //Substring은 배열에서 자를 위치 / 자를 길이를 받아야함 //자를 길이는 p.Length로 가능해보임. 자를 위치는? //t에서 p.Length만큼 묶이는게 멈출때까지 한글자씩 앞으로 가야함 -> 우선 for문으로 //마지막에 묶이고 멈추려면 t.Length에서 p.Length를 뺀 수치만큼 진행해야함. using System; public class Solution { pub..