본문 바로가기

전체 글

(21)
Linked List란 무엇인가? Linked list 란? Linked list정의 연결 리스트는 여러 개의 노드로 이루어져 있다. 각각의 노드는 데이터와 다음 노드가 뭔지 알려주는 주소를 가지고 있다. 또한 연결 리스트는 새로운 데이터를 추가하거나, 데이터의 위치를 찾거나, 제거하는 기능이 있어야 한다. Linked list는 일련의 원소를 배열처럼 차례대로 저장하지만, 원소들이 메모리상에 연속적으로 위치하지 않는다는 점이 다르다. linked list를 배우기전 리스트에 대해 먼저 배워보자. 리스트는 자료구조중 하나로 데이터를 나란히 저장하며,중복된 데이터의 저장을 막지 않는다. 리스트는 자료구조 구현방법에 따라서 선형 리스트(Linear List)와 연결 리스트(Linked List)로 구분할수 있다 선형 리스트 (Linear L..
자바스크립트와 객체지향 프로그래밍(OOP) 란 무엇인가? 자바스크립트와 객체지향 프로그래밍 (OOP)란 오늘날 유명한 많은 프로그래밍 언어 (Java, C#, C++, Python, PHP)등 은 객체 지향 프로그래밍을 지원한다. 자바스크립트(Es5)에서는 클래스를 지원하지는 않지만 자바스크립트 객체를 생성하는 생성자 함수를 제공하고 있다. 객체지향 프로그래밍은 보다 유연하고 유지보수성이 높은 프로그래밍을 하도록 의도되었고, 대규모 소프트웨이 공학에서 널리 알려져 있다. 다른 객체 지향 프로그래밍과는 다르게 자바스크립트에서의 객체지향 프로그래밍이란 , 모든것이 다 Object로 되어있고 Object로 설명이 가능하다고 할수 있다 자바스크립트에서는 Class를 지원하고 있지 않지만 자바스크립트 객체를 생성하는 생성자 함수를 이용할수 있다. 객체지향 프로그래밍의 ..
Stack Stack 은 FILO(firt-in,Last-Out)의 형태를 가지고 있다. 가장 먼저 들어온 값이 Stack의 가장 바닥에 들어가 값이 추가될수록 그 위에 쌓이게 됩니다. 값을 제거 하려면 반대로 위에서 부터 꺼내기 시작해야 합니다. FILO을 쉽게 생각하면 블록쌓기를 생각하면 된다 쌓은 블록을 무너트리지 않고 블록을 다른 상자에 담으려면 위에 올려진 블록부터 차근차근 빼내면 된다 위 그림을 보면 값이 들어간 순서는 1,2,3,4 이고 output 순서는 반대로 4,3,2,1이 된다. Stack의 Property stack의 구조를 보면 가장 위의 값을 확인할수 있기에 'top'이라는 property를 갖고 있다. stack의 Method Method 실행 결과 값 push() 값을 스택에 추가한다 ..
Queue Queue의 자료구조 Queue는 다음과 같은 성질을 갖는 자료형구조 이다. 1. 데이터를 집어넣을 수 있는 선형 자료형이다. 2.먼저 집어넣은 데이터가 먼저 나온다.FIFO(First In First Out) 3.데이터를 집어넣는 enqueue, 데이터를 추출하는 dequeue 등의 작업이 있다 Queue 는 흔히 말하는 선입 선출을 얘기하는 것이다. 프로그래밍을 도전하기전 영화관 아르바이트를 했었는데 거기서 선입 선출에 대해 정말 지겹도록 들었었다.. 먼저 들어온것이 먼저 나가고 후에 들어온게 가장 늦게 나가는 것. 그게 선입선출이다. 말을 잘 못해 이해가 안갈수도 있다.. 그림을 통해 알아보자. queue의 property front: 가장 먼저 들어간 맨 앞의 값 rear: 새로운 데이터가 들어갈..
this란 어떻게 사용하는가 1/2 (function invocation,Global,this.Methode) this는 기본적으로 5가지의 패턴으로 이루어져 있다. 이 패턴을 기억하고 있는다면 디스가 어디서 어떻게 사용되는지 알 수 있을 것이다. 패턴에는 (Global, Function invocation, Methode, call of appay, construction mode)이 있다. 한 번에 끝내면 좋을 거 같은데 처음 쓰는 글이라 내용이 길어져 과연 한 번에 끝낼 수 있을지 잘 모르겠다.... 먼저 Global Reference와 Function invocation 을 같이 설명하려 한다. 둘은 많이 비슷한점이 있다. 그건 바로 윈도우 객체라는 점이다. 그럼 윈도우가 무엇인가? 윈도우는 브라우저에서의 전역 객체이다. 이것만 들어서는 무슨 말인지 이해가 안 갈 수도(사실 안 가는 게 맞다...) 있다 ..