알고리즘 분석 | 데이터 구조 Rooted Tree | Tree ADT | 전위, 중위, 후위 순회
·
Algorithm
이전 포스팅 알고리즘 분석 | ADT 란 | 큐 Queues | List ADT 이전 포스팅 https://jelong.tistory.com/entry/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EC%8A%A4%ED%83%9D-%ED%9B%84%EC%9C%84-%ED%91%9C%EA%B8%B0%EB%B2%95Postfix-notation-%EC%97%AD-%ED%8F%B4%EB%9E%80%EB%93%9C-%ED%91%9C%EA%B8%B0%EB%B2%95-3-1 알고리즘 분 jelong.tistory.com 루트 트리(Rooted Tree) Tree 자료 구조는 많은 컴퓨터 과학 분야에서 활용되며, 이진 검색 트리나 허프만 코딩 등의 알고리즘에서 매우 중요한 역할을 합니다. 이러한..
[Java] Collection | 자바 List | ArrayList | 다양한 메소드
·
Java
List 란? List는 자바에서 제공하는 데이터 구조 중 하나이며, 여러 개의 데이터를 저장할 수 있는 자료형입니다. List는 배열과 비슷하게 인덱스를 사용하여 데이터에 접근할 수 있지만, 배열과 달리 크기가 가변적이므로 데이터의 추가, 삭제 등이 용이합니다 크기가 가변적이라는 것은 리스트(List)에 저장된 데이터의 개수가 변할 수 있다는 뜻입니다. 즉, 데이터를 추가하거나 삭제할 때마다 리스트의 크기가 동적으로 변화할 수 있습니다. 이와는 달리 배열(Array)은 미리 크기를 지정하고 데이터를 저장하는 것이기 때문에, 크기를 변경할 수 없습니다 List는 인터페이스로 정의되어 있고, ArrayList, LinkedList 등 다양한 구현체가 존재합니다. ArrayList는 내부적으로 배열을 사용하..
[상호 디자인] 상호작용 디자인(Interaction design) - 1
·
Interaction Design
상호작용 디자인(Interaction design)이란 상호작용 디자인은 사용자와 제품 또는 서비스 사이에서 일어나는 상호작용을 디자인하는 것을 말합니다. 즉, 사용자가 제품이나 서비스를 사용하는 과정에서 마주치는 모든 요소(버튼, 링크, 폼 등)와 이를 통해 일어나는 사용자 경험을 디자인하는 것입니다 상호작용 디자인은 사용자가 제품이나 서비스를 사용하는 과정에서 일어나는 모든 상호작용을 고려합니다. 상호작용 디자인은 제품이나 서비스를 사용하는 과정에서 사용자 경험(UX)을 개선하는 데 큰 역할을 합니다. 따라서, 제품 또는 서비스의 성공을 결정하는 중요한 디자인 분야 중 하나입니다 예를 들어, 모바일 앱을 사용하는 사용자가 화면에서 스크롤하거나, 터치 이벤트를 발생시키는 등의 상호작용을 하게 됩니다. ..
[Java] 자바 프로그래밍에서 흔히 발생하는 에러와 해결 방법!
·
Java
Java 에러란? 자바 프로그래밍에서 에러는 불가피한 존재이며, 이를 해결하는 것은 중요한 프로그래밍 능력 중 하나입니다.이번 글에서는 자바에서 흔히 발생하는 에러에 대해 다루고, 이를 해결하는 방법에 대해 알아보겠습니다 Java에서 발생할 수 있는 에러는 크게 3가지로 나눌 수 있습니다 컴파일 에러(Compile-time Error): 코드를 컴파일하는 동안 발생하는 에러로, 문법적인 오류나 타입 불일치 등 코드를 컴파일할 수 없는 경우 발생합니다. 이러한 에러는 코드를 컴파일하지 않고 수정해야 합니다. 런타임 에러(Runtime Error): 코드를 실행하는 동안 발생하는 에러로, 프로그램이 실행되는 과정에서 예외가 발생할 때 발생합니다. 런타임 에러는 코드를 수정하여 예외를 처리할 수 있습니다. 논..
[Java] 이클립스에서 JUnit 사용법: 간편하게 test case 작성하기
·
Java
Junit이란 이클립스는 대표적인 자바 개발 툴 중 하나이며, JUnit은 자바 개발에서 단위 테스트를 위한 대표적인 프레임워크입니다. 이번 글에서는 이클립스에서 JUnit을 설정하는 방법을 알아보겠습니다 JUnit 라이브러리 추가 1. 프로젝트를 마우스 오른쪽 버튼으로 클릭 후, Properties를 선택합니다 2. Java Build Path > Libraries > Add Library > JUnit을 선택합니다 3. JUnit 라이브러리의 버전을 선택합니다 4. Finish 버튼을 눌러 추가합니다 테스트 케이스 작성 1. 자바 클래스에서 마우스 오른쪽 버튼으로 클릭한 후, New > JUnit Test Case를 선택합니다 2. JUnit 테스트 케이스를 생성할 패키지와 클래스 이름을 입력합니다 ..
알고리즘 분석 | ADT 란 | 큐 Queues | List ADT
·
Algorithm
이전 포스팅 알고리즘 분석 | 스택 | 후위 표기법(Postfix notation) | 역 폴란드 표기법 | - 3 - 1 알고리즘 -2 리뷰 알고리즘의 실제 실행 시간을 평가하는 것은 어려울 수 있습니다. 이는 입력 크기, CPU 주파수, 사용 가능한 RAM, 데이터 전송 속도 및 자원을 선점하는 프로그램 등의 여러 요인 jelong.tistory.com 큐 (Queues) 큐(Queue)는 현실 세계에서 사용하는 대기열과 같이 먼저 들어온 것이 먼저 처리되는 (FIFO) 데이터 구조입니다. 큐(Queue)에 객체는 언제든지 뒤쪽(rear)에 삽입될 수 있지만, 큐의 맨 앞쪽(front)에 있는 요소만이 제거될 수 있습니다. 큐의 예로는 인쇄 대기 작업 목록과 같은 것이 있습니다. 요소들은 뒤쪽에서 큐..
알고리즘 분석 | 스택 | 후위 표기법(Postfix notation) | 역 폴란드 표기법
·
Algorithm
이전포스팅 알고리즘 분석(Algorithm Analysis) | 개념 | 임의 접근 머신 | 원시 연산 알고리즘 기본 개념 알고리즘이란 정해진 시간 동안 어떠한 문제를 해결하기 위한 순차적인 단계입니다 "0개 이상의 인풋을 넣었을 때 1 이상의 값을 도출해 내는 방법이나 과정" 내비게이션 - ro jelong.tistory.com 이전 포스팅 리뷰 알고리즘의 실제 실행 시간을 평가하는 것은 어려울 수 있습니다. 이는 입력 크기, CPU 주파수, 사용 가능한 RAM, 데이터 전송 속도 및 자원을 선점하는 프로그램 등의 여러 요인으로 인해 어려워집니다. 그러나 데이터의 크기가 종종 알고리즘 실행 시간을 결정하는 가장 중요한 요소입니다 알고리즘의 시간 복잡도를 정의하기 위해 성장률과 점근적 표기법과 같은 기술..
자바Java | Hailstone Sequence | Java 기초 문제
·
Java
우박수 (Hailstone Sequence) 이란 우박수 수열이란 만약 Hailstone()함수에 어떠한 수 n을 대입했을때, \( n ㅡ> n/2 \) (n이 짝수) \( n ㅡ> 3n+1 \) (n이 홀수) if \( n = 5 \), 출력 : [5, 16, 8, 4, 2, 1] 라는 과정을 통해 결국에는 마지막 숫자는 1이 된다는 추측입니다 우박수 수열을 콜라츠 추측(Collatz Conjecture)이라고도 합니다 이와같은 우박수 수열을 코드로 나타낸다면 아래와 같을 것 입니다 public static void main(String[] args) { int n = 5; while (n != 1) { System.out.println(n); if (n % 2 == 0) { n = n/2; } els..