본문 바로가기
728x90

알고리즘/개념4

[Queue] 큐 와 덱 사용법과 예제를 알아보자. queue란 사전적 으로는 무엇을 기다리는 사람, 자동차 등의 라는 뜻 FIFO구조 (First In First Out, 선입선출) 그래프의 넓이 우선탐색(BFS)에서 사용한다. 컴퓨터 버퍼에서, 마구 입력되었으나 처리하지못할때 큐를 만들어 대기 시킨다. Enqueue : 큐 맨 뒤에 데이터 추가 Dequeue : 큐 맨 앞쪽의 데이터 삭제 라고 한다. 사용법 import java.util.LinkedList; //import import java.util.Queue; //import Queue queue = new LinkedList(); // 선언 queue.add("data1"); //"data1"을 큐에 추가한다. -> 큐가 꽉차는 상황에서 예외발생시킴 queue.offer("data2"); //.. 2022. 1. 15.
[stack] 스택의 기본 개념과 사용법을 알아보자. stack 이란 자료 구조 중 하나인 Stack의 사전적 정의는 '쌓다', '더미' . 물건을 쌓아 올리듯 데이터를 쌓는 자료구조라고 할수 있다. 특징은 나중에 들어간것이 먼저나오는 (= 선입후출 구조) 형태를 띈다는것. (=Last In First Out) java.util.Stack을 import하면 바로 사용할 수 있다. 그럼 언제 stack을 쓰나요? 그래프의 깊이 우선탐색(DFS)할때 재귀적 함수호출시 사용 인터럽트처리, 수식의 계산, 서브루틴의 복귀 번지 저장할때 사용법 import java.util.stack; //임포트하면 스택을 사용할수있다. Stack stack = new Stack(); //int형 스택 선언 stack.push(1); // stack에 값 1 추가 stack.pop(.. 2022. 1. 12.
[알고리즘] 02 기본 자료구조 02-1 배열 자료구조 데이터 단위와 데이터 자체 사이의 물리적 또는 논리적인 관계를 말한다. 쉽게 말해 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법. 배열 int[] a; //배열의 선언 a= new int[5] //배열의 초기화. a는 길이가 5인 배열을 참조합니다. int[] a = n ew int[] {1,2,3,4,5}; // 선언과 초기화를 동시에. 배열은 같은 형의 구성 요소가 직선모양으로 연속하여 줄지어 있는 단순한 자료구조다. 배열이름[인덱스] 배열이름.clone() //배열의 복사 구성요소가 n개인 배열의 구성요소는 a[0], a[1], a[2].....a[n-1]이다. 배열의 길이 배열이름.length 초기값은 0이며, boolean은 false다. 배열 요소의 최댓값구.. 2021. 11. 26.
[알고리즘] 01 기본알고리즘 01-1 알고리즘이란 세 값의 최대값 키보드로 숫자와 문자열 입력하기 ( Scanner sc = new Scanner(System.in); ) System.in은 키보드와 연결된 표준입력 스트림. stdln.nextInt()가 호출되면 키보드로 입력한 정숫값을 얻을 수 있다. 이는 입력 스트림에서 문자나 숫자를 꺼내는 장치 역할을 한다. 자료형에따라 호출하는 메서드를 구분히야한다. ( nextBoolean() / nextByte() / nextInt() / next()->문자열, 줄바꿈 문자로 구분 / nextLine()문자열 1줄 알고리즘의 정의 : 문제를 해결하기위한것으로, 명확하게 정의되고 순서가 있는 유한 개의 규칙으로 이루어진 집합 public class d0_01 { static int max.. 2021. 11. 26.
728x90