연결리스트의 특성을 이용해 스택을 구현한다. 스택의 특성상 단방향 연결리스트로 충분히 구현 가능하다. 구성 요소로는 데이터를 담고 객체를 이어줄 Node, 단방향 연결리스트에서 시작점을 의미하는 head를 stack에서의 top으로 구성되고, 스택의 method로 isEmpty, push, pop, peek, size 를 구현할 것이다. 노드 객체 구현 class Node { E data; Node link; } ✔️ 타 언어에서 구조체로 구현되는 노드를 자바에서 객체로 구현 ✔️ 자바에서는 "포인터의 안정성"과 "객체 지향형 프로그래밍" 이라는 원칙하에 주소에 직접 접근하지 않는다 ✔️ 대신 객체를 레퍼런스(reference)로 다루고, 이는 객체가 저장된 위치에 대한 참조를 통해 간접적으로 객체간의 ..
부동 소수점(Float point)를 설명하기 전 부동소수점(Fixed point)에 대해 먼저 설명하겠다. 고정 소수점(Fixed Point) 정수를 이진수로 표현할 때는 맨 앞의 비트만 부호를 나타내는 부호로 두고, 그 외의 비트를 통해 값을 변환해 컴퓨터에 정보를 전달할 수 있다. 예를 들어 short, int, long 등의 자료형에 있어 변수에 대입될 최대 최소값을 고려하여 자료형을 설정해 resource를 효율적으로 관리할 수 있다. 실수의 경우는 어떻게 이진수로 표현할까? 먼저 고정 소수점의 경우 정해진 비트를 반으로 나눠 정수부와 소수부를 나누어 값을 이진수로 표현한다. 이렇듯 정수와 소수가 나누어지는 부분이 고정되어 있기 때문에 해당 표현 방식을 고정 소수점이라고 한다. 아래는 그러나, ..
자료형을 사용하는 이유 메모리 할당 데이터 유형 지정 연산과 처리 타입 검사와 안정성 메모리 사용 최적화 위 이유들은 일반적인 경우에 마땅하지만 경우에 따라 단점이 될 수 있다. 자료형은 실수, 정수, 소수, 문자, 문자열 등 다양하게 나뉘고 언어마다 이를 제한하는 크기와 명칭도 조금씩 다르다. 필자의 경우 자바를 공부하고 있기 때문에 자바의 자료형에대해 정리해 보았다. 기본 자료형: Primitive Type 기본 자료형은 반듯시 사용하기 전에 선언이 되어야 한다. OS에 따라 자료형의 길이가 변하지 않는다. 객체가 아니기 때문에 null을 가질 수 없다. 자바 기본 자료형의 크기와 범위는 아래와 같다. 타입 설명 크기(bit) 범위 char 16비트 유니코드(Unicode) 문자 데이터 16 ‘\u..