분류 전체보기 143

[자료구조] Heap

✅ 힙 (Heap) ❕ 기본 개념 - 그래프의 이진 트리 구조 중 하나 - 힙을 표현하는 트리 구조의 각 정점을 노드(node)라고 부르며, 각 노드에는 데이터가 저장됨 - 중복된 값을 허용함 - 두 가지의 힙 타입이 존재: Max-Heap / Min-Heap Min-Heap의 경우... - 항상 최상위 노드에 최솟값이 존재하므로, 데이터 수와 상관없이 항상 O(1) 시간에 최솟값을 추출할 수 있음 - 최솟값 추출한 후에는 힙을 재구축하게 되는데, 이때 가장 후미에 있는 데이터를 가장 위로 끌어올린 후에 그 자식과 비교해가며 아래 방향으로 재구축을 진행함 - 데이터 수를 n이라 할 때, 트리의 높이는 log2n이 되고 재구축하는데 걸리는 시간은 O(log n)이 됨 - 데이터를 추가할 때는 가장 후미에 ..

[자료구조] Hash Table

✅ 해시 테이블 (Hash Table) ❕ 기본 개념 - 키(Key)와 값(Value) 한 쌍의 형태로 데이터를 저장하는 자료구조 - 해시함수를 사용하여 키를 해시값으로 매핑한 후, 이 해시값을 인덱스 혹은 주소로 삼아 데이터 값을 키와 함께 저장함 - 해시값이 충돌할 때는 연결리스트를 사용하여 유연하게 데이터를 저장할 수 있음 - 검색을 빠르게 할 수 있기에 배열 내의 특정 데이터에 빠르게 접근할 수 있음 - 데이터 검색 시 시간복잡도: 평균 O(1), 최악의 경우 O(n) - 해시 테이블에 사용하는 배열의 크기를 적절히 설정하는 것이 중요함 - 배열의 크기가 너무 작으면 충돌이 많아지고 선형 탐색의 빈도가 높아짐 - 반대로 배열의 크기가 너무 크면 데이터가 빈 곳이 많아져서 메모리를 낭비하게 됨 ❕ ..

[자료구조] Queue

✅ 큐 (Queue) ❕ 기본 개념 - 데이터를 1열로 나열하는 데이터 구조 - 스택과 비슷하지만, 큐는 데이터를 추가하는 쪽과 삭제하는 쪽이 서로 반대쪽에 위치함 - "대기 행렬"이라고 생각하면 됨. 데이터가 줄 서 있는 행렬 ☜ 게임할 때 "큐가 왜이리 안 잡혀"할 때 쓰는 그 큐 - 먼저 넣은 것을 먼저 꺼내는 First In First Out (FIFO) 구조 - 스택과 마찬가지로 데이터를 조작할 수 있는 위치가 정해져 있음 - 중간에 있는 데이터에 indexing으로 접근할 수 없으며, 필요한 데이터가 나올 때까지 dequeue를 해야함 ❕ 작동 방식 - 큐에 데이터를 추가하는 작업을 enqueue, 데이터를 꺼내는 작업은 dequeue라고 함 - 큐의 가장 앞에서부터 차례대로 데이터가 추가됨 ..

[자료구조] Stack

✅ 스택 (Stack) ❕ 기본 개념 - 데이터를 1열로 나열하는 데이터 구조 - 나중에 넣은 것을 먼저 꺼내는 Last In First Out (LIFO) 구조 - 즉, 새롭게 추가한 데이터에만 접근할 수 있음 ❓ 리스트나 배열도 마찬가지로 1열로 나열한 데이터 구조인데? - 리스트/배열과 다르게 스택은 데이터 추가나 삭제가 단방향으로만 가능함 - 데이터 접근도 스택의 가장 위에 있는 데이터만 가능함 (indexing 불가) - 그래서 중간에 있는 데이터가 필요하다면 해당 데이터가 제일 위로 올 때까지 데이터를 pop 해야함 ✔ 활용 예시 단방향 조작만 가능하기 때문에 불편하다고 생각할 수 있지만, 항상 최신 데이터만 접근해야 하는 상황에서는 편리하게 사용된다. - 웹 브라우저 뒤로가기, 문서 작업 C..

[취준일기] SSAFY 8기 면접 탈락 (SW전공자)

에세이랑 코테까지 어렵사리 합격해놓고 면접에서 떨어지니까 너무 슬프다. 거의 두 달간 싸피 때문에 애간장 많이 태웠는데, 들인 시간과 노력에 비해 결과가 너무 허무하달까... 그래도 여태 열심히 준비해왔던 거 흔적이나 남길 겸 불합격 수기를 써본다. 😥 🔍 에세이 8기 에세이 주제는 다음과 같았다. 삼성 청년 SW 아카데미에 지원하신 동기와 향후 어떤 SW개발자로 성장하고 싶은지에 대해서 SW관련 경험을 토대로 작성 바랍니다. (500자 내외) - SW 관련 경험 : SW/IT 관련학습, IT 관련 자격증 취득 및 학습, 교내외 SW프로젝트 관련경험, 인턴/직무 체험, IT제품/앱/게임 등 서비스 사용경험, 관련 기사 구독 및 영상시청 등 500자 내외로 맞춰 쓰는 게 쉽지 않았다. 길게 쓰는 것보다 간..

Lifelog 2022.06.29

[취준일기] Oracle Associate Cloud Solution Engineer - 1차면접 탈락

어느날 링크드인으로 메세지 한 통이 날아왔다. Graduate Program Manager가 Associate Cloud Solution Engineer에 지원해 볼 생각 없냐며 연락한 것이었다. 내 프로필을 보니 good fit일 것 같다며... 도대체 어느 부분이? ㅋㅋ ㅜㅜ 뭐 눈곱만큼이나마 직무 관련 경험이 있는 candidate면 전부 다 연락 돌린거겠지만,, 이 프로그램에 관심 있냐며 물었고, 관심 있다고 답장하니까 곧바로 job description을 보내줬다. 솔루션 엔지니어가 하는 일에 대해서는 관련 업계 종사자 선배한테서 들은게 많아서 그다지 낯설지는 않았다. 지원할 생각이 있다면 resume를 보내달라길래, 망설임 없이 바로 보냈다. 무려 글로벌 대기업 인만큼 지원하는 것 자체만으로도..

Lifelog 2022.06.24

[취준일기] 한국일보 IT 개발자 (신입) - 1차면접 탈락

3/30까지 서류 접수 마감했던 개발자 공채. 난 백엔드 개발자로서는 내세울게 별로 없었지만(포폴 프로젝트 대부분이 프론트엔드), 공고의 신입 자격조건에 따르면 전혀 꿀릴 것은 없었기에 일단 무작정 지원을 했다. 다행히 자기소개서 문항도 총 3가지 밖에 없었고 어려운 질문들이 아니었기에 부담없이 지원. 심지어 코딩테스트를 보는 것 같지도 않았다. 너무 좋은걸...? 그러다 4/5 오후에 서류 합격 문자를 받았다. 하지만 기쁨도 잠시... 자세히 보니 코딩테스트를 보란다 😂😭 💻 코딩테스트 코테는 프로그래머스 사이트에서 진행됐고, 언어는 Java/Javascript 두 가지만 허용됐던 것으로 기억난다. 알고리즘 문제 2개, SQL 문제 2개, 그리고 서술형 1문제가 출제됐다. 각 20점 배점이었다. 난이도..

Lifelog 2022.06.17

[취업] 신입 프론트엔드 웹 개발자 resume 참고자료 || Frontend Developer Resume References (Graduates/Entry-level)

📄 Examples 📝 Writing Tips ✅ 영어이력서 작성의 모든 것 | 영문이력서 | 영어회화 | 해외취업 | 외국계취업 ✅ How to Write Your Best Resume for Software Engineering Jobs // Tips from an ex-FAANG recruiter ✅ JOB READY? Jr. Developer Resume Reviews 참고자료 https://resumeworded.com/entry-level-front-end-developer-resume-example https://www.resumeviking.com/samples/front-end-developer/ https://www.hiration.com/blog/entry-level-web-devel..

FYI 2022.05.28

SSAFY SW적성진단(SW전공) 대비 연습문제

💻 SWEA 기본기 복습 몸풀기 (D1~D2) 💯 D1 문제집 바로가기 💯 D2 문제집 바로가기 🚩 SWEA [S/W 문제해결 기본] (D3) 1206. 1일차 - View 1208. 1일차 - Flatten 1209. 2일차 - Sum 1213. 3일차 - String 1215. 3일차 - 회문1 1216. 3일차 - 회문2 1217. 4일차 - 거듭 제곱 1220. 5일차 - Magnetic 1221. 5일차 - GNS 1225. 7일차 - 암호생성기 1228. 8일차 - 암호문1 1229. 8일차 - 암호문2 1230. 8일차 - 암호문3 1234. 10일차 - 비밀번호 💀 SWEA [S/W 문제해결 응용] (D3) 1240. 1일차 - 단순 2진 암호코드 1244. 2일차 - 최대 상금 💀 [IM..

FYI 2022.05.17

[22.05.16] 갓생살기 (갑자기?)

갑자기 불어온 바람. 이유는 오늘 정말 예상치 못 하게 눈이 평소보다 일찍 떠져서. 맨날 해 뜰 때 잠들고 정오 넘어서 눈 뜨는 삶을 반복하다가... 오늘은 나름 해 뜨기 전에 잠들고 아침 10시 즈음에 일어나는 기적을 행했다. 그래, 미라클 모닝은 바라지도 않아! 이렇게만이라도 살자! 솔직히 13~14시에 일어나는게 사람새끼냐 내가 무슨 교대근무 하는 것도 아닌데 ㅋㅋㅋㅋ 이제부턴 제발 사람답게 살자... 새벽에 게임하지 말고, 밥 제때 먹고, 자주 씻고 밖에 좀 나가자 제발 아 오늘 동네에 좋은 스터디카페 하나 발견함. 2층에 서향이라서 오후에 채광이 너무 좋았음. 그리고 사장님이 엄청 열심히 관리하셔서 굉장히 편리하고 아늑했음. 언주초를 정면으로 바라보고 있어서 애기들 하교하는거 보면서 힐링했던 건..

Lifelog 2022.05.17

[JS] 배열 요소들의 모든 조합(Combinations) 구하기

function getCombinations(arr, N) { const results = []; if (N === 1) return arr.map((value) => [value]); arr.forEach((fixed, index, origin) => { const rest = origin.slice(index + 1); // 해당하는 fixed를 제외한 나머지 뒤 const combinations = getCombinations(rest, N - 1); // 나머지에 대해서 조합을 구한다. const attached = combinations.map((combination) => [fixed, ...combination]); // 돌아온 조합에 떼 놓은(fixed) 값 붙이기 results.push(..

[JS] 콘솔로 입력 받기

🔆 readline const readline = require("readline"); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); rl.on("line", (line) => { // 한 줄씩 입력받은 후 실행할 코드 rl.close(); // 필수. 없으면 입력을 무한히 받는다 }); rl.on("close", () => { process.exit(); // 입력이 끝난 후 실행할 코드 }); 🔆 (node.js) fs - 백준 시간제한 有 문제풀이용 // 한 줄 입력 let input = require("fs").readFileSync("/dev/stdin").toString(); // 여..

[Heroku+ClearDB] CORS error & 'PROTOCOL_CONNECTION_LOST' code H10 "App crashed"

내 웹사이트가 문제없이 항상 잘 작동되고 있는 줄 알았다. 매번 deploy 작업 직후 잘 동작하는지 체크해보면 빠릿빠릿 잘 돌아가길래 '음 잘 되네' 하고 뿌듯해하며 내버려뒀음. 근데 내가 안 볼 때면 심심할 때마다 네트워크 에러를 띄운다는 사실을 며칠 전에 알게 됨. 콘솔을 확인해보니 "Access to XMLHttpRequest has been blocked by CORS policy"에 "Error: Request failed with status code 503" 어쩌구가 시뻘겋게 떠있었음 🤬 그렇게 CORS 에러를 해결하기 위해 밤을 지새웠다... 여러 해결 방법들을 적용해봐도 deploy 직후에는 잘 되는듯 했으나, 몇분만 지나면 갑자기 2022-03-20T13:02:52.922283+00:..

Devlog/Web 2022.03.21

[취준일기] 22년 1월 ~ 3월 || 취준 맛보기 - 탈락의 쓴맛💩

1월 🔴 가톨릭중앙의료원 정보전략기획팀 정보관리직 - 서류 탈락 1/5에 서류 마감 후 1/17에 이메일로 불합격 통보받음. 여기는 채용공고랑 웹사이트 아무리 뒤져봐도 대체 무슨 업무를 하는건지 감도 안 잡혔음. 그래서 자소서 쓸 때 도무지 갈피가 안 잡혀서 그냥 내 기준에서 좋을만한건 다 때려박았음. 인사담당자 입장에서는 그런 자소서가 엉망이었을거고.. 근데 지금 생각해보니 기사자격증도 없고 관련 경력 등이 없다는 점이 더 크게 작용하지 않았을까 싶음. 자소서 이런거 다 떠나서 스펙만 따져봐도 난 바로 탈락할 수 밖에 없었던 상황이었을듯. 하지만 여기는 병원 관계자인 가족이 지원하라고 등 떠밀어서 지원한거라, 탈락해도 별 감흥이 없었음. 붙으면 좋고, 떨어져도 그만이었던 수준. 3월 🔴 마이다스아이티 ..

Lifelog 2022.03.18

Heroku 배포 - 백엔드 배포 과정 중 나를 당혹스럽게 만들었던 상황 모음집

프론트 배포는 Netlify로, 백엔드는 Heroku로 배포하기로 했다. Netlify를 통한 프론트 배포는 나름 easy peasy lemon squeezy였는데, 백엔드 배포는 정말이지 나를 하루웬종일 괴롭혔다. 🤯 내가 무지한 탓에 필요 이상으로 헤매고 고생한거긴 하지만 ㅎ... 어쨌든 정말 산 넘어 산이었다. 1. Heroku Git을 통한 deployment - 뭐 이렇게 복잡하지? 사실 Heroku는 documentation를 정말 친절하고 자세하게 제공해주기 때문에, 사용방법을 제대로 이해한 후 시키는대로 잘 따라가기만 한다면 헤맬 일이 거의 없다. 하지만 난 떠먹여줘도 못 받아먹었다는 점 🙄 한참을 헤매고 헤매다가 겨우 배포했다. ❓ Heroku CLI 설치가 안 되는 것 같은데? Inst..

Devlog/Web 2022.03.18
반응형