분류 전체보기38 Object형식 / Boxing 과 Unboxing Object형식은 모든 데이터를 다룰 수 있는 데이터 형식이다.그렇다면, Object형식은 어떻게 모든 데이터를 담을 수 있을까 ?그 이유는, Object형식이 모든 데이터 형식의 조상이기 때문이다. object형식은 참조 형식이다. -> 힙에 데이터를 할당함 (int ,double 형식은 값 형식이기 때문에 스택에 데이터를 할당함) 그런데, 값 형식 데이터를 object형식 객체에 담는다면, 데이터는 힙에 할당될까 스택에 할당될까 ? object형식은 값 형식의 데이터를 힙에 할당하기 위한 박싱(Boxing)기능을 제공한다.-> object형식에 값 형식의 데이터를 할당하려는 시도가 이루어지면 object형식은 박싱을 수행해서 해당 데이터를 힙에 할당한다.object a = 20;이 코드에서 20은.. 2025. 6. 13. 값 형식(Value Type)과 참조 형식(Reference Type) 데이터 형식은 값 형식과 참조 형식으로 분류할 수 있다. 값 형식(Value Type) : 변수가 값을 담는 데이터 형식 ------- 스택 메모리 영역 참조 형식 (Reference Type) :변수가 값 대신 값이 있는 곳의 위치(참조)를 담는 데이터 형식 스택과 값 형식스택 구조는 위와 같다. 스택은 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 자료구조이다. 스택은 LIFO(후입선출) 구조를 가지고 있다. 즉, 가장 최근에 넣은 자료를 뺄 수 있는 구조를 의미한다. 값 형식 변수는 모두 스택에 저장된다. 코드 블록 안에 생성된 모든 값 형식의 변수들은 프로그램 실행이 코드 블록을 닫는 중괄호 } 를 만나게 되면 메모리에서 제거된다. 힙과 참조 형식이 사진을 참고하여 메모리 영역을 이해하자... 2025. 6. 13. [알고리즘] 백준#1427 소트인사이드 - C# https://www.acmicpc.net/problem/1427 이 문제는 내림차순을 구현하는 문제이다. using System;using System.Linq;namespace CodingTest.Baekjoon{ public class B_1427 { public static void Main(string[] agrs) { string input = Console.ReadLine(); char[] arr = input.ToCharArray(); Descending_3(arr); } //방법 1 ) 내림차순 구현하기 (버블정렬) static void Descending_.. 2025. 5. 8. [알고리즘] 백준#2750 수 정렬하기 - C# https://www.acmicpc.net/problem/2750 이 문제는 오름차순을 구현하는 간단한 문제이다. C#에는 Sort()라는 내장함수가 있어 이 함수를 사용하면 아주 간단하게 구현할 수 있는 문제이지만, 직접 오름차순을 구현해보았다. 버블정렬을 이용하여 문제를 구현하였다. 버블정렬(Bubble Sort)은 인접한 두 요소를 비교하여 스왑하는 과정을 반복하여 정렬하는 방법이다. using System;using System.Linq;namespace CodingTest.Baekjoon{ public class B_2750 { public static void Main(string[] args) { int N = int.Parse(Co.. 2025. 5. 8. [알고리즘] 백준#2164 카드2 - C# https://www.acmicpc.net/problem/2164 제일 위의 첫 장은 버리고, 그 다음장은 가장 밑으로 놓는 것을 반복하여 가장 마지막으로 남은 카드가 무엇인지 확인하는 문제이다. Queue를 사용하여 간단하게 해결할 수 있었다. using System;using System.Collections.Generic;namespace CodingTest.Queue{ public class B_2164 { public static void Main(string[] args) { int N = int.Parse(Console.ReadLine()); Queue queue = new Queue(); for.. 2025. 5. 7. [알고리즘] 백준#12891 DNA 비밀번호 - C# https://www.acmicpc.net/problem/12891 이 문제는 윈도우 슬라이딩을 이용해서 해결해야하는 문제이다.개념은 아주 간단하다. 문제에서 제시한 P 만큼의 구간을 정해놓고 배열 내에서 움직여 가며 만들 수 있는 비밀번호의 종류의 수를 찾는 것이다. 그리고 문제의 핵심은 조건으로 주어진 A,C,G,T의 개수를 저장해놓는 배열을 만들고,현재 문자열의 A,C,G,T 개수를 저장하여 수를 비교하면서 비밀번호를 만들 수 있는지 없는지 판단하는 것이다 . using System;namespace CodingTest.Baekjoon{ //DNA 비밀번호 public class B_12891 { public static void Main(string[] args) .. 2025. 5. 7. 이전 1 2 3 4 ··· 7 다음