C\#상용 데이터 구조 와 알고리즘 총화

1.데이터
데이터(Data)는 외부 세계 정보의 매개체 로 컴퓨터 에 의 해 식별 되 고 가공 되 며 저장 된다.현실 생활 에서 바로 우리 의 제품 원자재 다.
컴퓨터 의 데 이 터 는 수치 데이터,그림,동 영상 자료 등 을 포함한다.
2.데이터 요소 와 데이터 항목
데이터 요소(Data Element)는 데이터 의 기본 단위 로 컴퓨터 처리 과정 에서 하나의 전체 로 처리 된다.
데이터 항목(Data Item):하나의 데이터 요 소 는 보통 하나 이상 의 데이터 항목 으로 구성 된다.
예 를 들 어 데이터베이스 시트:(Student)는 Id,Name,Sex,Age,Address 등 필드 가 있 고 이 표 는 여러 줄 의 데이터 가 있 습 니 다.우 리 는 보통 이 필드 를 데이터 항목,줄 마다 데이터 라 고 부른다.
데이터 요소 라 고 합 니 다.어떤 상황 에서 데이터 요 소 는 요소,노드,기록 등 이 라 고도 부른다.
데이터 항목 은 두 가지 로 나 뉜 다.(1)초등 항목;(2)조합 항[즉,더 작은 항목 으로 나 눌 수 있다.예 를 들 어 사람 은 유럽인,아시아인,아프리카 인 으로 나 눌 수 있다]
3.데이터 구조
데이터 구조(Data Structure)는 상호 간 에 존재 하 는 일종 또는 여러 가지 특정한 관계 의 데이터 요소 집합 이다.
모두 가 알다 시 피 컴퓨터 에서 어떠한 데이터 요소 도 단일 하거나 고립 적 으로 존재 할 수 없고 그들 사이 에는 일정한 관계 가 존재 한다.인류 체계 구조 와 마찬가지 로 사람 은 고립 되 어 외부 와 관계 가 없 을 수 없다.
데이터 구 조 는 네 가지 로 나 뉜 다.
(1)집합[세트]
(2)선형 구조[Linear Structure](흔히 볼 수 있 는 선형 구조 데이터,데이터 베이스 저장 데이터)
(3)나무 구조[나무 구조]    (트 리 구 조 는 마치 인류의 계승 관계 와 같 아서 컴퓨터 에서 xml 파일 에 데 이 터 를 저장 하 는 것 이 가장 전형 적 이다)
(4)도형 구조[Graphic Structure](도형 구조 도 상대 적 으로 복잡 하 다.여러 쌍 의 관계 가 존재 하기 때문에 컴퓨터 네트워크 토폴로지)
//img.jbzj.com/file_images/article/201606/201606281457219.png
4.데이터 개체
데이터 개체(Data Object),성질 이 같은 데이터 요소 의 집합,데이터(Data)의 하위 집합 입 니 다.{"aa","bb","cc","dd"}우 리 는 이 를 데이터 대상 으로 볼 수 있 습 니 다.모두 문자 길이 의 집합 입 니 다.
5.데이터 형식
데이터 형식(Data Type)은 위의 데이터 대상 에서 데이터 형식 이라는 개념 을 설명 할 수 있 습 니 다.많은 시간 데이터 형식 은 C\#,자바 등 고급 프로그램 언어 에서 비교적 많이 말 합 니 다.
데이터 형식 은 두 가지 로 나 뉜 다.
(1)비구 조 적 원자 유형(C\#즉 기본 데이터 형식,예 를 들 어 int,string,long 등)
(2)구조 유형 은 여러 구조 유형 으로 구성 되 고 분해 할 수 있다.구조 유형 은 구조 유형 과 비 구조의 원자 유형 을 포함 할 수 있다.
6.알고리즘
알고리즘:일련의 문 제 를 해결 하 는 명확 한 명령,알고리즘 은 시스템 의 방법 으로 문 제 를 해결 하 는 전략 체 제 를 설명 하 는 것 을 대표 합 니 다.
하나의 알고리즘 의 우열 은 공간 복잡 도와 시간 복잡 도 를 사용 하여 평가 할 수 있다.그 중에서 알고리즘 은 다섯 가지 특징 이 있다.
(1)빈곤 성:알고리즘 에서 모든 명령 의 집행 횟수 가 제한 되 고 모든 명령 을 집행 하 는 시간 이 제한 되 어 있다.
(2)정확성:알고리즘 의 모든 절 차 는 정확 한 정의 가 있어 야 한다.
(3)입력:    하나의 알고리즘 은 0 개 이상 의 입력 이 있어 연산 대상 의 초기 상황 을 묘사 합 니 다.0 개의 입력 이란 알고리즘 자체 가 초기 조건 을 제외 하고
(4)출력:   하나의 알고리즘 은 입력 데이터 가공 후의 결 과 를 반영 하기 위해 하나 이상 의 출력 이 있다.출력 이 없 는 알고리즘 은 무의미 하 다.
(5)타당 성:알고리즘 에서 실 행 된 모든 계산 단 계 는 기본 적 인 실행 가능 한 작업 단계 로 분 해 될 수 있다.즉,모든 계산 단 계 는 제 한 된 시간 안에 완성 할 수 있다.
알고리즘 분류:기본 알고리즘,데이터 구조 알고리즘,수론 과 대수 알고리즘,계산 기하학 적 알고리즘,그래 픽 알고리즘,동적 규칙 과 데이터 분석,암호 화 알고리즘,정렬 알고리즘,검색 알고리즘,에 세이 화 알고리즘,병렬 알고리즘
7.복잡 도
계산법 의 복잡 도 는 시간 복잡 도와 공간 복잡 도 를 사용 하여 평가 할 수 있다.
시간 복잡 도:알고리즘 의 시간 복잡 도 는 알고리즘 이 소모 해 야 하 는 시간 자원 을 말한다.
공간 복잡 도:알고리즘 의 공간 복잡 도 는 알고리즘 이 소모 해 야 할 공간 자원 을 말한다.
8.데이터 의 물리 적 구조
데이터 의 물리 구조(Physical Structure)는 저장 구조 라 고도 부 르 는데 데이터 가 컴퓨터 에서 의 표현 과 저장 으로 데이터 요소 의 표현 과 저장,데이터 요소 관계 의 표현 과 저장 을 포함한다.
데이터 구조 저장 소 는(1)순서 저장 구조 로 나 뉜 다.(2)체인 저장 구조
순서 저장 구조:데이터 요소 가 컴퓨터 메모리 에 있 는 상대 적 인 위 치 를 통 해 데이터 요소 의 논리 적 관 계 를 나타 내 고 논리 적 으로 인접 한 데이터 요 소 를 물리 적 위치 와 인접 한 저장 장치 에 저장 합 니 다.
C\#의 배열 구 조 는 전형 적 인 순서 저장 구조 방식 이다.
체인 식 저장 구조:인접 요 소 는 물리 적 저장 위치 유닛 과 인접 하지 않 고 인접 한 데이터 요 소 를 저장 하 는 주 소 를 통 해 관 계 를 유지 합 니 다.주 소 는 보통 인용(Reference)이 라 고 부 릅 니 다.
비고:이 글 은 데이터 구조 와 관련 된 개념 을 정리 한 것 일 뿐 입 니 다.우 리 는 프로 그래 밍 을 공부 할 때 데이터,복잡 도 등 이런 개념 을 자주 말 합 니 다.이 데이터,복잡 도 등 이 도대체 무엇 인지 연구 한 적 이 없습니다.여기 서 지식 점 을 정리 하면 여러분 들 이 이런 개념 을 이해 하 는 데 도움 이 될 수 있 습 니 다.
이상 의 이 C\#자주 사용 하 는 데이터 구조 와 알고리즘 정 리 는 바로 소 편 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.여러분 께 참고 가 되 고 저 희 를 많이 사랑 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기