일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 싸피 11기
- jpa
- 싸피11기
- 인프런
- 코딩테스트
- 싸피 기자단
- 자바 알고리즘
- 싸피 12기
- 코드트리
- 자바스크립트 자료구조
- 자바 코딩테스트
- 리액트
- swea
- 프로그래머스
- 싸피 대전캠퍼스
- 개발자
- SSAFYcial
- 싸피
- 알고리즘
- 자바스크립트
- ssafy
- 싸피셜
- 알고리즘 자바
- 프론트엔드
- 싸피 10기
- 코딩테스트 자바
- 백준
- 자료구조
- 비동기
- 싸피10기
- Today
- Total
목록분류 전체보기 (71)
병아리의 코딩 일기
안녕하세요! 이번 시간에는 선형 자료구조인 해시테이블에 대해 알아보겠습니다. :) 학창 시절 사물함을 떠올려보자.사물함의 각 칸에는 이름과 번호가 있기 때문에 우리는 쉽게 위치를 찾을 수 있었다. 해시 테이블은 사물함과 비슷하다. 해시 테이블은 한정된 배열 공간에 key를 index로 변환하여 값을 넣게 된다. 그럼 index는 어떻게 구할까? 해시테이블 키와 값을 받아 키를 해싱(Hashing)하여 나온 index값을 저장하는 선형 자료구조 삽입은 O(1)이며 키를 알고 있다면 삭제, 탐색도 O(1)로 수행한다. 용어설명 각 테이블에 해당하는 index를 해시 테이블에서는 버킷이라고 부른다. 테이블의 각 요소는 키와 값을 저장하고 있어야 한다. Hash 는 '고기와 감자를 잘게 다져 요리한 것'을 말한..
🍀 배열로 Queue를 구현하여 풀기 배열로 Queue를 구현하는 방법은 앞 글에 설명해두었으니 참고하시길 바랍니다! 이 문제를 처음 봤을 때 풀지 못했고, 이선협 강사님이 Linked List 로 Queue를 구현하여 푸시길래 같이 풀어보고 다시 Array를 이용해 풀어보았습니다. class Queue { constructor() { this.queue = []; this.front = 0; this.rear = 0; } enqueue(value) { this.queue[this.rear++] = value; } //dequeue 는 항상 값을 반환해준다는 걸 잊지 말기! dequeue() { const value = this.queue[this.front]; delete this.queue[this...
안녕하세요 :) 오늘은 자료구조 '큐'에 대해서 알아보겠습니다! 자바스크립트에서는 Class 를 이용하여 Queue를 구현합니다. 먼저 Class 의 개념에 대해 알고 싶으시다면 아래의 문서를 참고해주세요! http:// https://ko.javascript.info/class 큐(Queue) ? 'First In First Out' 이라는 개념을 가진 선형 자료구조다. 단어 그대로 먼저 들어간 것이 먼저 나오고, 나중에 들어간 것이 나중에 나온다는 개념이다. 큐의 맨 앞을 Front 라고 부르고, 큐의 맨 뒤는 Rear 라고 부른다. 큐에 요소를 추가하는 것을 EnQueue, 빼는 것을 DeQueue 라고 한다. 큐는 놀이 동산 대기 줄?! 큐를 현실에 비유하면 놀이동산 대기 줄이라고 볼 수 있다. ..
https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 알고리즘 강의 중 '스택' 부분을 듣고 실습 예제로 풀어본 문제인데 알고보니 2단계! 1단계 연습문제들을 다 풀고, 강의를 듣고 있는데 2단계도 해볼만 하겠다는 생각이 드네요! (착각일수도...ㅋㅅㅋ) 얼른 자료구조 / 알고리즘 배우고 2단계로 넘어가보려구요. 나의 풀이 function solution(s) { let answer = [s[0]]; for (let i = 1; i < s.lengt..
스택은 무엇일까? 스택은 `Last In First Out` 이라는 개념을 가진 선형 자료구조다. 말 그대로 '나중에 들어간 요소가 먼저 나온다' 혹은 '먼저 들어간 요소가 나중에 나온다' 라는 개념이다. 상자에서 나중에 넣은 물건을 먼저 꺼내듯이 말이다. 요소를 넣는 것을 push 라 부르고, 요소를 빼는 것은 pop 이라고 부른다. 그리고 Stack의 맨 위에 있는 요소를 TOP 이라고 부른다. 마치 프링글스 통과 비슷한 구조로, 맨 위에 있는 과자만 꺼낼 수 있고, 아래에 깔린 과자는 꺼낼 수 없다. 스택의 동작 원리 스택의 동작 원리는 굉장히 단순하다. 우리가 할 수 있는 행동은 요소를 넣는 push와 빼는 pop만이 존재한다. 가장 맨 위에 있는 TOP 요소만 컨트롤 하기에 구현도 어렵지 않다...
안녕하세요! 오늘은 이선협 강사님의 자바스크립트 알고리즘 / 자료구조 강의 중 단일 연결리스트 구현 부분을 정리해보았습니다. 이해하는 데 조금 시간이 걸렸지만, 어떤 식으로 로직이 짜여지는지 알게 되었네요 :) 코멘트나 궁금하신 점은 댓글로 남겨주세요! ⭐️ 학습 목표: 단일 연결 리스트를 자바스크립트로 구현해보자! 단일 연결 리스트는 Node 클래스와 SinglyLinkedList 클래스로 구성된다. 먼저, 생성자 부분을 살펴보자. 생성자 부분 class Node { constructor(value) { this.value = value; this.next = null; } } class SinglyLinkedList { constructor() { this.head = null; this.tail =..