본문 바로가기
728x90
반응형

자료구조 기초2

[자료구조 with Python] 3. 선형 자료 구조 - 배열(1) 1. 배열 거의 모든 프로그래밍 언어는 서로 연관된 변수 값을 묶어서 저장할 수 있는 배열이라는 기능을 제공한다. 이 배열이 프로그래밍에서 매우 유용한 이유는 메모리의 효율적인 관리와 관련이 있다. 배열이 어떻게 효율적인 메모리 관리에 도움이 되는지 살펴보려면 조금 옛날로 돌아가 C언어가 주력으로 사용되던 시점으로 돌아가야 한다. C 언어에서 변수 3개를 int 형태로 선언해보려 한다. 이 변수들을 선언하면 메모리에 다음과 같은 일이 발생한다. 각각의 변수값이 메모리의 임의 구역에 저장되며, 해당 구역은 변수명으로 이름이 지정된다. 대부분의 C 언어 기본서에서는 변수명이 적혀있는 상자에 값이 저장되는 것으로 설명을 하는데, 위의 그림에 대입하자면, 메모리의 여러 상자 중, 1이 들어간 상자는 a라고 지정.. 2020. 12. 13.
[자료구조 with Python] 2. 알고리즘이란. 1. 알고리즘(Algorithm)이란 무엇인가 알고리즘. 요즘에는 유투브 덕에 이 말을 많이 듣는다. "유투브 알고리즘이 나를 이곳으로 이끌었다". 그래서 이 알고리즘이라는 단어가 컴퓨터의 등장 이후 발생한 단어라고 알고 계신 분들이 많을 듯 하다. 하지만, 의외로 이 알고리즘은 최초의 컴퓨터가 탄생하기 이전에도 존재했던 단어이고, 지금도 우리의 일상에서도 물론이거니와 기원전의 생활에서도 얼마든지 볼 수 있다. 알고리즘은 어떤 일을 함에 있어서 "일을 효율적으로 처리하기 위한 절차"라고 생각하면 된다. 예를 들어, 라면을 하나 끓인다고 가정해보자. 라면 끓이는 방법이야 사람마다 제각각이고 개인의 경우에도 자기 기분에 따라 면을 먼저 넣는 날이 있을 것이고 스프를 먼저 넣는 날이 있을 것이다(가장 중요한 .. 2020. 12. 12.
728x90
반응형