본문 바로가기

멀티캠퍼스 풀스택 과정/알고리즘9

알고리즘1-4. 큐(Queue) 큐(Queue) - 스택과 마찬가지로 데이터를 일시적으로 쌓아 놓은 자료구조이다. - 가장 먼저 넣은 데이터를 가장 먼저 꺼내는 선입선출(FIFO)이다. 인큐(enqueue): 큐에 데이터를 넣는 작업 디큐(dequeue): 큐에서 데이터를 꺼내는 작업 프론트(front): 꺼내는 쪽 리어(rear): 데이터를 넣는 쪽 링버퍼로 큐 만들기 더보기 front = 5, rear = 5 디큐할 경우: 36(queue[0])을 디큐한 후 front값을 que[1]로 업데이트 해준다. (그 다음에 디큐할 경우를 대비해서) 인큐할 경우: queue[5]자리에 64를 저장하고 나서 rear값을 que[0]으로 업데이트 해준다. - 링퍼버: 배열의 처음과 끝이 연결되었다고 보는 자료구조 - 여기서 어떤 요소가 첫 번째.. 2022. 1. 26.
알고리즘1-2. 검색 알고리즘(선형검색, 이진검색) 1. 검색 알고리즘 1-1. 선형검색(Sequential Search) 또는 순차검색(Linear Search) - 무작위로 모인 데이터를 검색하는 수행 알고리즘 - 데이터가 모인 집합(배열, 링크드리스트 등)의 처음부터 끝까지 하나씩 순서대로 비교하며 원하는 값을 찾아내는 알고리즘 1. for문을 사용해 linearSearch 메서드를 생성하고, 메서드 호출 1) main 메서드에서 데이터의 갯수를 입력받아서 배열을 생성하고 2) for문을 실행해서 배열에 입력받은 데이터를 삽입하고 3) 찾을 데이터를 입력받는다. public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print("데이터수 ->".. 2022. 1. 25.
알고리즘1-1. 알고리즘이란? 알고리즘이란? - ‘문제나 과제를 해결하기 위한 처리 절차를 하나하나 구체적인 순서에 따라 표현한 아이디어나 생각’ 알고리즘의 조건 입력 외부에서 제공되는 자료가 0개 이상 존재한다. 출력 적어도 2개 이상의 서로 다른 결과가 나와야 한다. (즉 모든 입력에 하나의 출력이 나오면 안된다.) 명확성 수행 과정은 명확하고 모호하지 않은 명령어로 구성되어야 한다. 유한성(종결성) 유한 번의 명령어를 수행 후(유한 시간 내)에 종료한다. 효율성 모든 과정은 명백하게 실행 가능(검증 가능)한 것이어야 한다. 프로그램 작성의 흐름(프로그램 알고리즘) - 기획 → 설계 → 프로그래밍(코딩) → 디버깅 → 문서 작성 1. 알고리즘 성능 - 좋은 알고리즘의 분석 기능 정확성 얼마나 정확하게 동작하는가? 작업량 얼마나 적.. 2022. 1. 25.