들쭉날쭉한 배열

Jagged array
들쭉날쭉한 배열의 메모리 레이아웃.

컴퓨터 과학에서, 누더기 배열이라고[citation needed] 알려진 들쭉날쭉한 배열은 멤버 배열의 길이가 다를 수 있는 배열로,[1] 출력으로 시각화하면 들쭉날쭉한 가장자리 행을 만들어 낸다.이와는 대조적으로 2차원 배열은 항상[2]직사각형이기 때문에 들쭉날쭉한 배열은 다차원 배열과 혼동해서는 안 되지만, 전자는 후자를 모방하기 위해 종종 사용된다.

Java, PHP, Python(다차원 목록), Ruby, C#와 같은 언어의 배열.넷, 비주얼 베이직.NET, Perl, JavaScript, Object-C, Swift, Atlas Autocode가 Ilife 벡터로 구현된다.

C#Java[3] 들쭉날쭉한 배열은 다음 코드로 생성할 수 있다.[4]

t로[][]c; c = 새로운 t로[2][]; // 2행 생성 c[0] = 새로운 t로[5]; // 행 0에 대한 열 5개 c[1] = 새로운 t로[3]; // 1행에 대해 3열 생성 

CC++에서는 다음 코드를 사용하여 (스택에) 들쭉날쭉한 배열을 생성할 수 있다.

t로 들쭉날쭉한_row0[] = {0,1}; t로 들쭉날쭉한_row1[] = {1,2,3}; t로 *들쭉날쭉한[] = { 들쭉날쭉한_row0, 들쭉날쭉한_row1 }; 

C/C++에서는 다음과 같은 포인터 배열을 사용하여 들쭉날쭉한 배열을 ( 힙에) 생성할 수도 있다.

t로 *들쭉날쭉한[5];  들쭉날쭉한[0] = 만록의(의 크기(t로) * 10); 들쭉날쭉한[1] = 만록의(의 크기(t로) * 3); 

C++/CLI에서 들쭉날쭉한 배열은 다음 코드로 생성할 수 있다.[5]

사용. 네임스페이스 시스템; t로 본래의() {     배열하다<배열하다<곱절로 하다> ^> ^ 배열명 = gcnew 배열하다 <배열하다<곱절로 하다> ^> (4); // 배열 포함 4개     //message     돌아오다 0; } 

Fortran에서, 할당 가능한 구성요소가 있는 파생 유형을 사용하여 들쭉날쭉한 배열을 생성할 수 있다.

타자를 치다 :: Jagged_type     정수의, 할당 가능한 :: 배를 젓다(:) 끝형Jagged_type 타자를 치다(Jagged_type) :: 들쭉날쭉한(3) 들쭉날쭉한(1)%배를 젓다 = [1] 들쭉날쭉한(2)%배를 젓다 = [1,2] 들쭉날쭉한(3)%배를 젓다 = [1,2,3] 

Python에서 들쭉날쭉한 배열은 네이티브가 아니지만 목록 포괄성을 사용하여 모든 차원 매트릭스를 지원하는 다차원 목록을 만들 수 있다.[6]

multi_list_3d = [[[] 을 위해 i  범위(3)] 을 위해 i  범위(3)] # 생산: [], [], [], [], [], [], [], [], []]  multi_list_5d = [[[] 을 위해 i  범위(5)] 을 위해 i  범위(5)] # 생산: [[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [] 

참고 항목

참조

  1. ^ Jesse Liberty; Brian MacDonald (18 November 2008). Learning C# 3.0. "O'Reilly Media, Inc.". pp. 210–. ISBN 978-0-596-55420-0.
  2. ^ Don Box (2002). Essential .Net: The Common Language Runtime. Addison-Wesley Professional. p. 138. ISBN 978-0-201-73411-9.
  3. ^ "Jagged Array in Java - GeeksforGeeks". GeeksforGeeks. 2016-02-03. Retrieved 2018-08-13.
  4. ^ Paul J. Deitel; Harvey M. Deitel (26 September 2008). C# 2008 for Programmers. Pearson Education. p. 40. ISBN 978-0-13-701188-9.
  5. ^ "Jagged Arrays". FunctionX. Retrieved 26 November 2014.
  6. ^ "Lists in Python Demystified". Alvin.io. Retrieved 31 January 2016.