55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
저는 자바로 공부중인 학생인데요
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.자바로 수업을 따라가기엔 힘든가요?아니면 충분한가요?
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
다른 재귀문제를 몇몇 개 풀어봤지만 하노이탑은 그냥 형태를 기억해서 푸네요..
하노이탑 문제가 어떻게 재귀의 기본문제일까요.. 다른 재귀문제 많이 풀어봤지만, 하노이탑은 정답 안 본 상태에서 며칠이고 고민해도 못풀었었고 지금도 사실 잘 모르겠네요.그냥 아래 항목들을 외워서 재귀 함수 호출하면 된다고 암기했습니다.n-1만큼 A에서 B로 옮기기가장 큰 원반 A에서 C로 옮기기나머지를 B에서 C로 옮기기 영상으로 보면 코드 한 줄 한 줄 실행되는 과정 보여주시면 "되니까 신기하네"라고 생각은 하지만, 1번 과정 중에 3번도 간헐적으로 일어나고, 3번하다가 1번도 계속 일어나면서 얼기설기 엉켜있어서 이해하기 힘드네요. 다들 대략적인 형태를 기억해서 푸는것일뿐 정확히 탑이 이동하는 절차 순서에 대해서 파악하고 쓰는건 아니겠죠?!
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
자바 LinkedList 질문
안녕하세요. 현재 자바를 공부 중인데 자바 표준라이브러리에 있는 LinkedList는 insertAt() 대신 add()가 있는데 insertAt()과 동일하게 봐도 될까요? 그리고 전체 구조도 동일하게 봐도 되는지 질문 드립니다. 감사합니다.
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
sumArray()재귀함수 이해가 안됩니다!
sumArray 함수에서 return 값인sumArray(arr.slice(0, -1)) + arr[arr.length - 1] 구문이 이해가 잘 안되는데arr.slice(0, -1) 은 [1, 2, 3, 4]이고arr[arr.length - 1]은 5인데[1, 2, 3, 4] + 5 값으로는 1, 2, 3, 4, 55 나와야 되는게 아닌가요??어째서 sumArray([1, 2, 3, 4])를 줬다고 해서1 + 2 + 3 + 4 가 되는 지 모르겠습니다.만약 그렇게 되려면 아래 같은 로직이라고 있어야되는거 아닌가요?? let plus = 0; arr.forEach(el => { plus += el });도저히 이해가 안되네요 도와주시면 감사하겠습니다!!
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
연결 리스트 구현중 에러
연결 리스트 코드 그대로 작성했는데 다음과 같은 에러가 발생합니다.자바 스크립트는 처음 다뤄서 그런데 뭐가 문제일까요?에러내용은 다음과 같습니다.--import { Node } from './LinkedList.mjs'; ^SyntaxError: Unexpected token { at Module._compile (internal/modules/cjs/loader.js:723:23) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) at Function.Module.runMain (internal/modules/cjs/loader.js:831:12) at startup (internal/bootstrap/node.js:283:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
deleteAt(index) 함수 질문이 있습니다
선생님 안녕하세요!! deleteAt(index)함수 공부하다가 질문이 있습니다. index==0일 경우 보면 head의 값만 변경하고 첫번째 삭제할 노드의 next값은 계속 두번째 노드값을 가르키고 있는데,,제 생각에는 첫번째 노드값의 next를 null로 만들어줘야 한다고 생각하는데 선생님의 의견이 궁금합니다~
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
하노이 탑에서 A, B, C의 위치가 왜 계속 바뀌는 건가요??
A, B, C가 어떠한 원리로 바뀌게 되는건지 이해가 잘 안갑니다ㅠㅠ
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
터미널에서 isEmpty: false가 나옵니다.ㅜㅜ
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
연결리스트-구현 관련 질문드립니다.
12분 쯤에 만든 연결리스트를 test 해보는 부분이 있는데요, 아래와 같은 코드가 나오는데 갑자기 'list'라는 단어가 어디서 나온건지 궁금해서요!ㅠㅠ그런 클래스는 선언된 적이 없는것 같은데... 제가 swift만 다뤄보고 js 를 처음봐서 모르는 걸까요?import { Node, LinkedList } from './LinkedList.mjs'; list.insertAt(0, 0); list.insertAt(1, 1); list.insertAt(2, 2); list.insertAt(3, 3); list.insertAt(4, 4); list.printAll();
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
ReferenceError: currentNode is not defined오류가 납니다ㅠㅠ
코드가 중간에 잘못된건지 선생님이 주신 자료를 다운받아 복붙을 해보았는데도 오류가 납니다ㅠㅠ 무엇이 문제인지 봐주시면 감사하겠습니다ㅠㅠㅠ
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
해시테이블 질문있습니다.
강의 잘 들었습니다. 비전공자임에도 이해하기 정말 편하였습니다. 해시함수를 통해 충돌을 방지하여 데이터를 각 인덱스 번째에 오는 연결리스트에 부여하는 것 까지 보고 구현까지 해보았는데 궁금한게 생겨서 질문합니다.만약 key값이 해시함수를 걸쳐 같은 인덱스로 부여되는 상황이 아닌, 완전히 key값이 동일한 상황에 오면 해당 해시테이블의 구현으로는 리스트의 헤드에 삽입하여 삽입에는 문제가 없는데 찾을때 키값이 같아버리면 먼저 넣은 데이터는 찾지 못하는 건가요?이런 현상의 해결방법도 있는지 궁금합니다.
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
7:31초 데이터 표에서 질문있습니다
안녕하세요 코딩테스트전에 기본 개념을 알고자 이렇게 강의 듣게 되었습니다 :) 그림으로 쉽게 설명해주셔서 덕분에 이해가 빨리됩니다! 덕분에 운영체제도 들어볼까하는데 ㅎㅎ 기대가 됩니다.해시테이블구현 - 7:31초에 hashTable.set()으로 선수들의 데이터 값을 저장했습니다. 저장시, 인덱스 1에서 이운재 선수가 먼저 연결리스트에 저장되고 후에 박지성 선수가 저장되면 그림상 데이터에서 박지성선수가 먼저오고 다음 이운재가 되어야 된다고 생각하는데 반대인 이유가 궁금합니다. set(key,value){ this.arr[this.hashFunction(key)].insertAt(0, new HashData(key, value)) }여기서 index를 0으로 지정한 이유가 가장 앞부분부터 삽입하기 위해서라고 생각했습니다. remove 함수에서 console.log(currentNode)를 확인하면서 하는데 제가 처음 공부하는거라 확신도 없고 아리송합니다. 답변주시면 정말 감사하겠습니다. 감사합니다.
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
강의 질문
비전공자가 수강할수있는 강의가 맞나요;; 실습코드는 너무 어렵고 java코드도 어렵네요 ㅠㅠ혹시 실습은 따라하지 않고, 강의영상만 들으면 자료구조와 알고리즘을 이해하는데 무리가 있을까요?
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
인스턴스 생성
안녕하세요.클래스 생성자 설정시 ()를 붙여주는 부분에 대해 여쭤보고자 합니다.인스턴스 생성시에는 class를 지정하여 함수처럼 불러옵니다. 아래와 같이 ()를 붙여서요.let deque = new Deque() constructor에서는 함수 형태가 아니라 ()없이 객체를 불러옵니다. constructor() { this.list = new DoublyLinkedList; } 해쉬 테이블에서는 constructor안에서 for구문을 구동하면서, 어레이를 생성하는데 함수로서 불러옵니다. constructor() { this.arr = []; for (let i =0; i<10 ; ++i) { this.arr[i] = new DoublyLinkedList(); }이렇게 객체로 불러오는 것과 함수 형태로 ()를 붙여 불러오는 것이 어떤 차이가 있는지 궁금합니다.지난해 들어보다가 너무 어려워서 자바스크립트와 c++기초를 조금 듣고 와서 나머지 진도를 진행하고 있습니다. 그림을 통해 이해하기 쉽게 만들어주셔서 따라하면서 .. 흥미롭게 배우고 있습니다~
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
Test_queue 출력 오류
안녕하세요 큐 실습 중 마지막 부분 출력이 선생님과 다르게 출력이 되는데, 이유를 모르겠어서 글 남깁니다.3번째 4번째 출력 다 다르게 나오고 4번째 출력에는 null 값이 나오는데 혹시 이유를 알 수 있을까요? 아래 결과 및 코드 첨부 드립니다. 감사합니다~!
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
이해가됐습니다...
강의를 보면서 왜 갑자기 count 1이 2가 되지 했는데hanoi 함수가 스택에 쌓이면서 count가 2이었던 함수 3이었던 함수가 끝이 안났기 때문에 계속 count가 올라갔던거군요. 이거 때문에 분명 count 1인 상태로 함수가 끝났는데 갑자기 2이었던 함수가 왜 시작되는지 의아했습니다. 동영상 5번 반복적으로 보니깐 이제야 이해되네요! 감사합니다!
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
하위문제 하향식 계산이 정확히 뭔지 모르겠습니다.
하위문제란 마지막 원소를 제외하고 나머지 원소를 하위문제인걸까요?하향식 계산이라는거는 증가 계산이 아닌 감소 계산인걸까요? + => 상향식, - => 하향식?이러한 점 때문에 재귀 이해가 더 안되네요 ㅠㅠ
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
연결리스트 질문입니다.
선생님 안녕하세요. 질문이 있습니다. 1️⃣ insertAt() 함수에서 에러 처리할 때if(index > this.count) 마지막 인덱스에 데이터가 삽입이 될 수 있어서 초과로 한걸까요?deleteAt(), getNodeAt() 함수에서 에러 처리할 때if(index >= this.count) 마지막 인덱스가 없기 때문에 이상으로 한걸까요? 헤깔려서 정리하면서 여쭤봅니다.2️⃣ insert 함수 만들 때와 다르게 delete, getNode 함수 만들 때 return 한 이유가 궁금합니다. 강의를 반복해서 듣는데. 헤깔리는게 자꾸 생기네요ㅜ..ㅎ
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
선생님 안녕하세요~~ 연결리스트 중 질문입니다.
안녕하세요. 선생님! 손코딩하면서 연결리스트를 다시 듣고 있습니다. 기본 개념인 것 같은데 let list = new LinkedList()말씀하시면서 인스턴스화 했다고 하셨는데 인스턴스화가 무엇인지 궁금합니다. 감사합니다.
- 해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
안녕하세요! 큐 관련 질문입니다.
선생님 안녕하세요. deleteAt 를 만들 때 마지막노드(tail) 제거 하는 부분에서index == this.count -1마자믹 노드인데 this.count-1 하는 이유는 무엇일까요?비전공자로 개발에 도전하고 있는데.. 자료구조 어렵네요ㅜ