개발자자기계발

Study Log/자료구조

[자료구조] 배열리스트의 특징과 원소 추가 제거 방법

- 배열리스트(ArrayList) 논리적 (저장)순서와 물리적 저장 순서가 동일하다 원소의 위치 인덱스는 0부터 시작한다 (C배열에서와 동일) 배열리스트의 단점 원소의 개수가 10만개인 배열리스트에서 원소의 추가/제거가 빈번하게 발생한다면? 중간에 추가 제거가 일어날때 해당 데이터와 관계없는 데이터들의 이동이 필요하다 배열리스트의 원소 추가 추가전 시작 지점과 방향, 어디까지 의 3가지 점을 주의해야함 1의 위치에 5를 삽입하기위해 가장 뒤에 있는값을 하나씩 옮긴 후 새로운 데이터를 삽입한다 추가가능한 위치인지 확인 필요 newElementCount 개수 만큼 값을 추가로 저장할 수 있음 int addALElement(ArrayList* pList , int position, ArrayListNode e..

Study Log/자료구조

[자료구조] 포인터의 포인터의 의미와 사용방법

포인터의 포인터 : 포인터 변수를 가리키는 포인터 변수 int int_value = 100; int *ptr_int = &int_value; int **pptr_int = &ptr_int; 포인터의 포인터는 주소가 저장된 포인트 변수의 주소를 저장하는 변수. 변수 int_value : 100 포인터 변수 ptr_int : c300 포인터 변수 ptr_int가 가리키는 변수의 값 : 100 더블포인터 변수 pptr_int : b200 더블포인터 변수 pptr_int 가 가리키는 주소 : c300 더블 포인터 변수 pptr_int 가 가리키는 주소가 가리키는 값 : 100 - 행과 열의 크기에 따라 동적으로 배열을 생성 int row = 3; int col = 4; int **pptr_int_array = ..

개발하는 채찡
'개발자자기계발' 태그의 글 목록 (2 Page)