728x90
반응형

 

자료를 저장만 하면 뭐해? 꺼내 써야지! 

지금까지 우리는 자료를 다양한 방법으로 저장하는 법을 배웠어요. 하지만 중요한 건… 저장한 자료를 꺼내서 사용하는 것!

 이번 시간에는 리스트와 딕셔너리에서 자료를 꺼내는 방법을 배워볼 거예요.

 


리스트에서 꺼내기

리스트는 순서가 있어서 번호(인덱스) 로 꺼낼 수 있어요.

char* friends[3] = {"지민", "서준", "유나"};

printf("첫 번째 친구: %s\n", friends[0]);

 리스트는 0번부터 시작해요! (0이 첫 번째예요!)

 


딕셔너리(구조체)에서 꺼내기

C언어에서는 딕셔너리 대신 구조체를 썼었죠? 저장된 정보를 이렇게 꺼낼 수 있어요:

struct Student {
    char name[20];
    int age;
    char school[30];
};

struct Student jimin = {"지민", 12, "별빛초등학교"};

printf("이름: %s\n", jimin.name);
printf("나이: %d\n", jimin.age);

 구조체에서는 이름표(필드 이름)로 꺼내 써요!

 


왜 꺼내 쓰는 게 중요할까?

  • 점수를 저장만 하고 안 꺼내면 의미가 없겠죠?
  • 이름, 나이 등을 화면에 보여주거나 조건에 따라 다르게 하려면 꺼내야 해요.

 그래서 저장하는 것만큼 꺼내는 것도 중요해요!


 오늘 배운 것 정리

리스트는 번호로, 딕셔너리는 이름표로 자료를 꺼낼 수 있어요. 자료는 꺼내서 써야 진짜로 쓸모가 생겨요!


다음 편 예고 

다음 시간에는 문법 기초 배우기 로 넘어가요!

코드를 쓸 때 꼭 지켜야 할 규칙과 기호들에 대해 하나씩 배워볼 거예요! 

728x90
반응형
728x90
반응형

 

줄을 서듯 자료를 차례차례 저장해요! 

자료가 여러 개 있을 때, 컴퓨터는 줄 세우듯 순서대로 정리할 수 있어요. 이렇게 줄을 세워 저장하는 방식이 바로 **리스트(list)**예요!

 


리스트의 특징은?

  • 순서가 있어요 (누가 먼저 들어왔는지 알아요)
  • 자료를 쉽게 추가하거나 삭제할 수 있어요
  • 자료의 개수가 정해져 있지 않아도 돼요!

 그래서 리스트는 자료가 많고 바뀔 일이 많을 때 아주 좋아요!


배열과 리스트의 차이는?

비교 항목 배열 (Array) 리스트 (List)

크기 처음에 크기를 정해야 해요 자유롭게 늘어나요
자료 추가/삭제 어려워요 쉬워요
사용 예 점수 5개 저장 채팅방 메시지 저장

 


리스트 예시 (생각하기 쉬운 표현)

예를 들어, 내 친구 목록을 저장한다면?

친구목록 = ["지민", "서준", "유나"]

그리고 새로운 친구를 추가할 수도 있어요:

친구목록에 "하린" 추가!

C언어에서는 배열처럼 표현하지만, 리스트 기능은 따로 만들어야 해요

char* friends[4] = {"지민", "서준", "유나", "하린"};

 배열로 만들긴 하지만, 리스트처럼 쓰는 연습도 해볼 수 있어요!

 


 오늘 배운 것 정리

리스트는 자료를 순서대로 저장하고 자유롭게 추가하거나 뺄 수 있는 구조예요. 자료가 늘거나 줄 수 있는 상황에 딱 좋아요!


다음 편 예고 

다음 시간에는 딕셔너리란 무엇일까? 를 배워볼 거예요!

이름표(키)를 붙여서 자료를 더 똑똑하게 찾을 수 있는 방법이에요! 

728x90
반응형
728x90
반응형

리스트(List) 완전 이해하기

이전 글에서는 배열(Array)에 대해 알아봤습니다.
이번에는 배열의 한계를 보완한 자료구조, 리스트(List) 에 대해 자세히 정리해봅니다.


1. 리스트란?

리스트는 데이터의 순서를 유지하면서, 크기를 동적으로 조절할 수 있는 자료구조입니다.

  • 배열처럼 인덱스를 통해 데이터에 접근 가능
  • 필요에 따라 자동으로 크기가 늘어나거나 줄어듬
  • 삽입, 삭제가 배열보다 유연함

2. 리스트의 특징

항목 설명

크기 동적 (필요에 따라 자동 확장)
접근 속도 인덱스로 빠르게 접근 (O(1))
삽입/삭제 속도 끝에 추가는 빠름 (O(1)), 중간 삽입/삭제는 느림 (O(n))
메모리 사용 약간 더 큼 (빈 공간 고려)

3. 리스트 사용 예시 (C# 기준)

 List 선언과 초기화

using System.Collections.Generic;

// 빈 리스트 생성
List<int> numbers = new List<int>();

// 값과 함께 초기화
List<string> fruits = new List<string> { "사과", "바나나", "포도" };

 요소 추가

numbers.Add(10);
numbers.Add(20);

 요소 접근 및 수정

Console.WriteLine(fruits[0]);  // "사과"
fruits[1] = "딸기";             // "바나나"를 "딸기"로 변경

 요소 삽입

fruits.Insert(1, "오렌지"); // 1번 인덱스에 "오렌지" 삽입

 요소 삭제

fruits.Remove("사과");       // "사과" 제거
fruits.RemoveAt(0);          // 0번 인덱스 요소 제거

 리스트 순회

foreach (var fruit in fruits)
{
    Console.WriteLine(fruit);
}

4. 실생활 예시로 이해하기

  • 리스트 = 늘었다 줄었다 하는 책꽂이
    • 책을 추가하면 자동으로 공간이 늘어나고
    • 책을 빼면 자동으로 공간이 줄어드는 유연한 책장

5. 리스트와 배열 비교

항목 배열(Array) 리스트(List)

크기 고정 가변
삽입/삭제 느림 상대적으로 빠름
메모리 작음 약간 큼
선언 방법 간단 약간 복잡 (using 필요)

이번 글에서는 리스트(List) 의 개념, 특징, C# 코드 사용법을 정리했습니다.

  • 리스트는 배열의 고정 크기 문제를 해결한 유연한 자료구조입니다.
  • 삽입/삭제가 용이해 실무에서도 가장 자주 사용됩니다.

 

728x90
반응형

'개발이야기' 카테고리의 다른 글

자료구조 시리즈 5편  (0) 2025.04.21
자료구조 시리즈 4편  (0) 2025.04.21
자료구조 시리즈 2편  (0) 2025.04.20
자료구조 시리즈 1편  (0) 2025.04.20
[C#] WinForms 파일 관리 앱 최종  (0) 2025.04.19

+ Recent posts