큐 ( Queue<T> )
·
⭐C Sharp/15-4. 스택과 큐
Queue는 자료구조 중에서 먼저 들어간 데이터가 먼저 나오는 Queue를 기반으로 한다.선입선출 ( First-in , First-Out , FIFO ) 구조의 컬렉션이다. 선언 방법System.Collections.Generic 네임스페이스에 있는 Queue 를 사용한다.using System.Collections.Generic;Queue queue = new Queue(); //int형Queue strqueue = new Queue(); //string형 초기 용량 ( capacity ) 이나 배열, 리스트로 초기화 가능Queue queue = new Queue(100); Queue queueFromArray = new Queue(new int[] { 1, 2, 3 });string[] nam..
스택 ( Stack<T> )
·
⭐C Sharp/15-4. 스택과 큐
Stack 은 자료구조 중에서 가장 마지막에 넣은 데이터를 가장 먼저 꺼내는 스택을 기반으로 한다.후입선출 ( Last-in , First-Out, LIFO ) 방식의 컬렉션이다. 📌 기본 선언 방법스택은 System.Collections.Generic 네임스페이스에 있는 제네릭 클래스이다.using System.Collections.Generic;Stack stack = new Stack();Stack : int형만 담을 수 있는 스택Stack : string형만 담을 수 있는 스택Stack : 사용자 정의 클래스 객체도 담을수 있다 int[] numbers = { 1, 2, 3, 4, 5 };Stack stack = new Stack(numbers);초기값으로 배열이나 리스트를 넣을수 있다.이 경..
Method
·
⭐C Sharp/📌문법 사전
📌1. Method ( 함수 )메서드 ( 함수 )는 특정 작업 ( 기능 ) 을 묶어서 재사용할 수 있도록 만든 코드 블록이다.[접근제한자] [반환형] 메서드이름(매개변수목록){ // 실행 코드 return 값; // 반환형이 void가 아닐 때 필요}접근제한자 : public , private , protected 등 ( 외부에서 접근 가능 여부 )반환형 : 메서드가 돌려줄 값의 타입 ( int , string , void 등 )메서드 이름 : 파스칼 표기법 ( PascalCase ) 로 작성하는 게 관례이다매개변수 : 호출할 때 전달 받는 값 ( 준비물 ) 📂 2. 반환값이 있는 메서드public int Add(int a, int b){ return a + b;}// 호출int r..
for , foreach , while , do-while
·
⭐C Sharp/📌문법 사전
📌 1. for ( 반복문 )반복 횟수가 정해져 있을 때 가장 많이 쓰이는 반복문for (초기식; 조건식; 증감식){ // 조건식이 true일 때 여기있는 코드 실행}초기식 : 반복문 시작 전에 한 번만 실행된다.조건식 : 매 반복마다 검사 → true 이면 블록 실행, false 이면 종료증감식 : 블록 실행이 끝날 때마다 실행된다. ⚠️ 주의조건식을 잘못 작성하면 무한 루프 ( Loop ) 에 빠질수 있다.continue → 증감식 → 조건 검사break → for문 종료초기식, 조건식, 증감식 은 비워둘 수 있음 📌 2. foreach ( 반복문 )컬렉션이나 배열을 처음부터 끝까지 순회할 때 사용foreach (var 변수 in 컬렉션){ // 변수를 이용한 코드}in : fore..
if & switch
·
⭐C Sharp/📌문법 사전
📌 1. if ( 조건문 )조건이 true 일 때만 블록 { } 안의 코드를 실행if (조건){ // 위 조건이 참일 때 이 내용 실행}else if (다른 조건){ // 다른 조건이 참일 때 실행}else{ // 모든 조건이 거짓일 때 실행}⚠️ 주의조건식은 반드시 true / false 로 판정될 수 있어야 한다.여러 조건을 연결할 때에는 && , || 같은 논리 연산자 사용 가능 📌 2. switch ( 조건문 )하나의 변수 값에 따라 여러 분기 처리case 키워드로 값 별 분기 만들고, break 로 블록을 끝낸다switch 가 반복문 안에 들어가 있으면, continue 는 switch 를 빠져나가서 가까운 반복문으로 거슬러 올라간다.switch (값){ case 값1..
250925
·
📖TIL
선형과 비선형 1. 트리 : 말 그래도 나무와 같은 모양, 계층적인 구조- 시작점 노드 : 루트 노드- 끝자락 노드 : 리프 노드- 각 노드 하나의 부모를 가짐- 모든 노드가 연결 되어있다- SortedSet 이라는 자료구조가 트리로 되어있다- 바이너리 서치 트리 , BST 2. 그래프 : 데이터들이 자유롭게 연결 가능, 자료간 방향이 있을수도 있고 없을수도 있다- 원형 원소들을 보고 한글로는 정점, 영어로는 Vertex 버텍스, Node- 원소와 원소 사이 선을 보고 한글로는 간선, 영어로는 Edge 엣지, 방향, 가중치- 노드 간에 서로 연결이 되어있지 않을 수도 있다. - 꼭 하나가 한쪽으로만 연결되지 않을 수도 있다.- 더 자유로움이 보장되고, 더 어렵다.- 소셜 네트워크 , 네비게이션의 길찾기 ..
250925 Revision
·
📖TIL
static void Main(string[] args){ // List : 몹, 총알, 인벤토리 List list = new List(); //list.Add(1); //Add 로 추가하거나 //list.Remove(1); // 값을 찾아서 지우거나 //list.RemoveAt(1); // 인덱스로 지운다 list[0] = 1; // Add로 공간을 추가하지 않았기 때문에 에러가 난다}static void Main(string[] args){ LinkedList list = new LinkedList(); list.AddLast(1); list.AddLast(2); list.AddLast(3); list.AddFirst(11); var a..
자료구조
·
⭐C Sharp/📂▼자료구조
자료구조 ( Data Structure )프로그래밍 목적 중 하나는 데이터를 다루는 것이다.데이터를 어떻게 효율적으로 저장하고, 정리하고, 사용 할 것인가는 프로그램의 성능과 직결된다.자료구조 ( Data Structure )는 데이터를 효율적으로 저장, 관리, 처리하기 위한 방법과 형식을 의미한다.단순히 데이터를 모아두는 것이 아니라, 프로그램이 데이터를 빠르고 효율적으로 검색, 삽입, 삭제, 수정할 수 있도록 돕는 체계적인 구죠입니다. 자료구조의 필요성데이터의 크기와 복잡성이 커질수록 메모리 사용 효율과 연산 속도가 중요해진다.같은 문제라도 자료구조를 어떻게 활용하느냐에 따라 프로그램의 성능이 크게 달라진다.자료 구조는 크게 다음과 같이 분류된다.종류설명선형 구조데이터를 순서대로 나열 ( 배열 ,..
우유 자판기 만들기
·
📖TIL/🔥Projects
오늘 배운 큐를 이용해서 자판기를 만들어보자! using System;using System.Collections.Generic;using System.ComponentModel;using System.Linq;using System.Management.Instrumentation;using System.Text;using System.Threading;using System.Threading.Tasks;// Milk라는 클래스와 VendingMachine 이라는 클래스를 하나 만들겠습니다.// Milk의 맴버변수로, 유통기한을 나타내는 int를 작성해주시기 바랍니다.// VendingMachine 클래스에는 Queue를 활용하여 Milk를 담을 수 있는 컨테이너를 필드로 작성하여 주시기 바랍니다.// ..