본문 바로가기
반응형

개발22

[알고리즘/C++] - 정렬 모음 프로그래밍의 세계에서는 여러 개의 데이터들을 순차적으로 정렬하는 다양한 방법을 제공합니다.1,2,3,4,5 처럼 숫자를 오름차순으로 정렬하는 것부터가,나,다처럼 이름순으로 정렬하기도 하고,5,4,3,2,1과 같이 숫자를 내림차순으로 거꾸로 정렬하기도 합니다.프로그래밍에서는 이렇게 데이터를 적절히 정렬해두는 것이 중요합니다. 그래야만 해당 데이터가 필요한 순간에 손쉽게 그 데이터를 탐색하고 접근할 수 있기 때문입니다. 오늘은 알고리즘에서 소개되는 몇가지 정렬 방법들을 알아보도록 하겠습니다. 버블 정렬(Bubble Sort) 시간복잡도: O(n²)인접한 두 원소를 비교하여 교환하는 방식으로 정렬하며, 가장 큰 원소가 뒤로 이동합니다.코드가 간단하여 구현이 쉬운 반면, 시간복잡도 면에서 효율이 떨어지기에 큰 .. 2024. 7. 18.
[알고리즘/c++] - 하노이 머 하노 안녕하세요? 오랜만에 돌아온 알고리즘 시간입니다.오늘 배워볼 알고리즘은 바로.두번째 앨리스 머 하노(두번째앨리스는노란쌍둥이)하노이 머 하노가 아니라 하노이 탑 알고리즘.입니다. 하노이 탑 게임 : 3개의 기둥에 적당한 개수의 원반을 쌓아놓고 다른쪽으로 원판을 올리는 게임- 규칙 1: 작은 원반 위에 큰 원반이 올 수 없다. - 규칙 2: 원반을 옮기는 최소 횟수를 찾자(2개 = 3번 , 3개 = 7번) 하노이 탑 알고리즘은 위의 게임을 클리어하기 위한 일종의 규칙을 알고리즘으로 구현한 것을 의미합니다.하노이 탑의 원리와 정답은 의외로 간단하면서도 쉽게 생각해내기가 어렵습니다.https://vidkidz.tistory.com/649 하노이의 탑 (Tower of Hanoi)하노이탑 (Tower of Han.. 2024. 6. 18.
[컴퓨터개론] - 명령어 사이클과 인터럽트(??:제발끼어들게해주세요) 오늘은 명령어 사이클과 인터럽트에 관해 알아보도록 하겠습니다.이 두가지 개념을 알기 위해서 가장 먼저 명령어 사이클을 알아봅시다.명령어 사이클 : 하나의 명령어를 처리하는 흐름을 일컷는 말.이렇게 하나의 명령어를 처리하기 위한 사이클 속에는 두가지 절차를 거칩니다.인출 사이클: 명령어를 가져오는 과정실행 사이클: 명령어를 실행하는 과정이 두가지 사이클이 실행되는 과정에서 만약 인출한 명령어가 간접주소지정방식을 참조하고 있는 등의 경우에는 바로 실행사이클에 명령어를 돌입시킬 수 없습니다. 따라서 추가적으로 간접 사이클을 통해 메모리에 한 번 더 접근한 후, 실행사이클이 진행됩니다.그리고 이렇게 두개에서 세개 사이의 사이클이 실행되는 사이, 실행 사이클에서는 인터럽트가 발생할 수 있습니다.인터럽트 : 정해진.. 2024. 4. 26.
[알고리즘/C++] - 링크드리스트안에 더블링크드리스트 더블 링크드리스트 안에 더블..더블링크드리스트,,(DoubleLInkedList) 오늘은 제가 좋아하는 옛날 아이스크림을 가져와봤습니다.항상 생각하지만 귀멸의 칼날의 어떤 캐릭터도 이 더블더블이랑 비슷하다고 생각합니다.아니면 말고요.. 이전 포스팅에서 말하였듯이 연결리스트에서의 다른 구현방법인 더블 링크드 리스트에 대해서 알아보도록 하겠습니다.더블 링크드 리스트는 연결 리스트 개념 안에 존재하는 세부 개념입니다. 다만, 이전에 설명했던 단일 연결리스트와는 다르게 이름대로 데이터가 서로 이중 연결을 합니다.2번데이터는 이전데이터(1번)를 가리키는 주소값, 다음데이터(3번)을 가리키는 주소값, 그리고 자시자신 값. 총 세가지 값을 가집니다.이렇게 모든 데이터가 각각 세개의 데이터를 가지며, 이전데이터가 NULL인 경우에는 그 데이터는 첫번째 헤드. 다음 데이터가 NULL인 경우에는 그 데.. 2024. 4. 23.
[알고리즘/C++] - 링크드리스트,,(LInkedList) 안녕하세요 오늘은 링크드리스트(LinkedList)에 대해서 알아보도록 하겠습니다..이름이 너무 정직해서 아재드립을 칠 수가 없다는 사실이 너무나도 안타깝습니다..아쉬운대로 메이플 스토리 링크 스킬을 가져와봤습니다..성에 차지 않네요,, 추상적 자료형인 리스트를 구현한 자료구조로, Linked List라는 말 그대로 어떤 데이터 덩어리(이하 노드Node)를 저장할 때 그 다음 순서의 자료가 있는 위치를 데이터에 포함시키는 방식으로 자료를 저장한다. 예를 들어 한 반에 있는 학생들의 자료를 저장한다면, 학생 하나하나의 신상명세 자료를 노드로 만들고, 1번 학생의 신상명세 자료에 2번 학생 신상명세가 어디있는지 표시를 해 놓는 방식이다. 쉽게 생각하면 자료를 비엔나 소시지마냥 줄줄이 엮어놓은 것이다.- 나무.. 2024. 4. 23.
[플러터(Flutter)]- Admob으로 내가 만든 앱에 광고 넣어보기(1)_ 기본적인 셋팅을 진행하자 안녕하세요.오늘 소개할 내용은 플러터를 통해 앱 내부 광고를 게시하는 방법에 관한 글입니다.알림 못지않게 이 부분을 구현하는 것도 애를 많이 먹었어서 조금이라도 참고가 될 수 있도록 글을 작성해보고자 합니다그럼 시작하도록 하겠습니다!1. Admob 가입 및 생성https://admob.google.com/intl/ko/home/ Google AdMob: 모바일 앱 수익 창출인앱 광고를 사용하여 모바일 앱에서 더 많은 수익을 창출하고, 사용이 간편한 도구를 통해 유용한 분석 정보를 얻고 앱을 성장시켜 보세요.admob.google.com먼저 Admob를 가입합니다.  Admob은 광고를 통해 수익을 창출할 수 있도록 도와주는 시스템입니다. 가입을 진행하고 나면 Admob의 프로젝트 하나를 생성해줍시다.이렇.. 2024. 3. 19.
반응형