(연재) 파이썬은 처음이라 – 리스트는 처음이라

지난 시간에 파이썬의 기본적인 값 타입에 대해서 살펴보았는데, 그 때 소개했던 리스트에 대해서 조금 더 자세히 알아보도록 하겠다. 리스트를 엄밀하게 정의하면 “0개 이상의 값의 원소들의 순서있는 집합“이라고 정의할 수 있다. 즉 일종의 집합(collection)이나 컨테이너(container)의 형태로 그 내부에 여러 개의 값을 원소로 가질 수 있으며 다른 언어에서는 배열(Array) 혹은 벡터(Vector)라 불리는 타입과 비슷하다. 리스트는 순서있는 집합이므로

오일러 프로젝트 11

오일러 프로젝트 11번 – 격자내에서의 이웃한 네 수의 곱의 최대값 찾기 이번 문제는 격자를 탐색하는 문제이다. 아래와 같은 20×20 격자가 있습니다. 08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43

Tail 과 꼬리재귀(Tail Recursion) – Swift

꼬리재귀 Natasha ElementTypehe Robot에 꼬리재귀에 대한 글이 올라오고 Digg에서 많은 digg을 얻었는데, 좀 이상해서 내용을 정리해본다. 링크한 글의 저자는 꼬리재귀와, 함수형 언어의 자료 구조인 리스트의 head, tail을 혼동하고 있는 듯 하다. 우선 꼬리재귀에 대해서 먼저 이야기하겠다. 꼬리 재귀는 재귀의 특별한 한 형태이다. 꼬리 재귀를 설명하기 전에 먼저 재귀(recursion)에 대해 알아보자. 재귀는 어떤 함수의 내부에서 스스로를

[Python101] Iterable (1) – 리스트

지난 시간 for 문을 설명할 때 다음과 같은 문법이 잠깐 등장했다. for number in range(1,10): 이 구문은 range() 함수를 사용해 만들어지는 1~9 까지의 숫자의 ‘집합’의 개별 원소에 대해 반복적인 명령을 수행하는 구문이라고 했다. 이러한 집합은 사실 영어로 ‘iterable’이라고 하지만 우리말로는 딱히 정확히 대응시킬만한 말이 없다는 것도 이야기했다. 이번 시간에는 이 iterable에 대해서 알아보고자 한다. *