배열과 문자열

ORCASUIT·2023년 10월 21일
0

배열(Array)

C

  • C에서 배열은 연속적인 메모리에 데이터를 저장합니다.
  • 배열의 크기는 선언 시에 고정됩니다.
  • 데이터 타입이 동일한 원소만 저장할 수 있습니다.
  • 배열 인덱스는 0부터 시작합니다.
  • 배열의 크기를 런타임에서 동적으로 변경할 수 없습니다.
int arr[5] = {1, 2, 3, 4, 5};

Python

  • Python의 리스트는 동적 배열로 구현되어 있습니다.
  • 크기를 동적으로 변경할 수 있으며, 다양한 타입의 원소를 저장할 수 있습니다.
  • 슬라이싱, 추가, 삭제 등의 다양한 연산을 기본적으로 지원합니다.
arr = [1, 2, 3, 4, 5]

문자열(String)

C

  • C에서 문자열은 문자의 배열로 처리됩니다.
  • 문자열의 끝은 널 문자(\0)로 표시됩니다.
  • 문자열은 불변(Immutable)이 아니며, 메모리에 직접 접근하여 변경할 수 있습니다.
char str[] = "Hello";

Python

  • Python에서 문자열은 불변(Immutable)입니다.
  • 문자열에 대한 다양한 메서드와 연산을 지원합니다 (예: len(), str.upper(), str.replace() 등).
  • 인덱스를 통한 접근 및 슬라이싱이 가능합니다.
str = "Hello"

요약

  • C는 더 낮은 수준의 메모리 제어를 할 수 있지만, 그만큼 복잡성이 증가합니다.
  • Python은 편의성과 다양한 기능을 제공하지만, 실행 속도가 C보다 느리고 메모리 효율성이 떨어질 수 있습니다.
  • 배열과 문자열을 다루는 알고리즘 문제에 접근할 때 언어의 이러한 특성을 이해하고 있으면 좋습니다.

0개의 댓글