반응형

배열 6

배열(Array)과 리스트(List)

이번 글에서는 배열과 리스트, 그리고 둘의 장단점과 이를 통해 둘의 차이를 알아보도록 하자. 배열(Array) 먼저 Array에 대해서 알아보자. Array는 여러 개의 데이터들을 효율적으로 저장/관리/사용하기위해 사용되는 자료형이다. Array는 같은 자료형을 가진 데이터들을 묶어서 저장하는데, 이 각각의 데이터들을 배열 요소(Element)라고한다. 또한 이 각각의 Element들의 위치에 번호를 붙여서 그 위치에 Access하는 구조로 되어있는데, 이 번호를 Index라고 한다. Array의 주요 특징은 메모리상에 데이터들이 `연속적`으로 저장되어있다는 점과 선언시에 크기를 지정해주어야한다는 점이다. 이를 그림으로 표현하면 아래와 같다. 위 그림은 int형의 크기 5개짜리 배열을 선언하였을 때를 표..

Computer Science 2021.06.07

코틀린 5. 배열

이번 글에서는 배열에 대해서 알아보도록 하겠습니다. 배열 배열이란, 어떤 특정한 자료형을 연속적으로 나열하는 것을 이야기합니다. 예를 들어, 여러분이 1~5까지의 숫자를 변수에 저장해야 한다고 생각해봅시다. fun main() { var a = 1 var b = 2 var c = 3 var d = 4 var e = 5 } 우리가 지금까지 알아온 지식으로는 이 정도로 해결할 수 있을 것입니다. 하지만 코드를 보자마자 이 방법은 매우 비효율적일 것이라는 생각이 듭니다. 또한, 1~5가 아닌 1~100까지만 가도 이 방법은 매우 귀찮고, 힘든 일이 될 것입니다. 때문에 이렇게 여러 개의 자료들을 저장하기 위해서 우리는 배열을 사용합니다. 위에서 말했듯이 배열은 특정한 자료형을 연속적으로 나열하는 것을 말하는데..

자바 11. 배열-2

배열에 대해서 이어서 알아보도록 하겠습니다. 다차원 배열 우리가 지금까지 보았던 배열은 모두 '1차원 배열'이라고 부르는 것들입니다. 복수의 자료형을 메모리 공간상에 선형, 즉 1차원으로 잡혀있기 때문에 이처럼 부르는 것입니다. 자바에서는 1차원 배열 외에도 2차원 이상의 배열도 사용할 수 있도록 허용하고 있습니다. 물론 메모리 공간에서는 동일하게 연속적인 공간일 뿐이고, 편의상 이처럼 부르는 것입니다. 이렇게 2차원 이상의 배열들을 다차원 배열이라고 이야기하는데, 다차원 배열들은 각각 자신보다 한 단계 아래 차원의 배열들을 요소로 하는 배열입니다. 예를 들어 2차원 배열은 1차원 배열들을 각 요소로 가지며, 3차원 배열들은 1차원 배열을 각 요소로 하는 2차원 배열을 요소로 가지게 됩니다. 즉 '배열의..

자바 10. 배열-1

이번 글에서는 배열에 대해서 알아보도록 하겠습니다. 배열이란? 배열이라는 것은 특정한 자료형의 여러 변수들을 하나의 묶음으로 다루는것을 이야기합니다. 만약 여러분이 숫자 5개를 저장해야된다면 변수를 어떻게 선언하실건가요? public class example{ public static void main(String[] args){ int n1, n2, n3, n4, n5; } } 숫자의 개수가 5개인 경우엔 위와 같이 별 어려움 없이 해결할 수 있습니다. 하지만 이런때 늘 나오는 이야기로, 저장할 숫자가 100개, 1000개, 혹은 10만개라면? 이런 경우엔 위와 같은 방법으론 해결할 수 없으실겁니다. 이때 배열을 사용하면 이를 손쉽게 다룰 수 있습니다. 배열의 기본 형식은 다음과 같습니다. 자료형[] ..

C언어 12. 배열과 포인터

저번 글에서 C언어의 가장 중요한 특징이라고 할 수 있는 포인터에 대해서 알아보았습니다. 이번엔 포인터와 이전에 알아보았던 배열의 관계에 대해서 알아보도록 하겠습니다. 먼저 기억을 한번 더듬어봅시다. 프로그램에서 배열의 모든 요소를 출력해야 한다면 어떻게 해야 할까요? 맞습니다. 반복문을 사용해서 모든 요소를 출력할 수 있죠. 하지만 이 작업을 한 번만 하는 것이 아닌 프로그램 전체에서 여러번 빈번하게 출력한다면 어떨까요? 이에 대한 함수를 새로 정의해서 사용하면 매우 간단하게 사용할 수 있겠죠. 배열을 함수의 인자로 그런데 한번 생각해봅시다. 이 배열을 어떻게 함수에게 인자로 넘겨줘야 할까요? 배열의 모든 요소를 각각 인자로 넘겨주면 이 문제를 해결할 수 있겠죠. #include void printAr..

C언어 10. 배열

이번 글에선 C언어에서 사용하는 배열에 대해서 알아보도록 하겠습니다. 배열이란 무엇일까? 먼저 배열이란 특정한 자료형을 연속적으로 나열하는것을 이야기합니다. 여러분이 만약 숫자 5개를 저장하기위한 int형 변수를 선언하려면 어떻게 해야 할까요? #include int main() { int num1, num2, num3, num4, num5; return 0; } 겨우 변수 5개 이기 때문에 별로 어렵지는 않습니다. 하지만 이것이 숫자 500개라면 어떻게 할까요? 그런 때조차 이렇게 코드를 작성해야 한다면 굉장히 불편하고 귀찮을 것입니다. 이런 코드를 배열을 사용해 코딩하면 매우 쉽게 할 수 있습니다. 먼저 배열의 기본적인 선언 방법부터 알아보도록 하겠습니다. 자료형 배열명[배열크기]; 위와 같이 사용하..

반응형