250204 TIL

박소희·2025년 2월 4일

Unity_7기

목록 보기
19/94

5주차 강의

알고리즘: 입력을 받아 원하는 출력을 생상하기 위한 절차

공간 복잡도: 입력 크기에 따라 필요한 저장 공간의 양을 측정

정렬 알고리즘

  • 선택 정렬: 배열에서 최소값/최대값을 찾아 맨 앞/뒤와 교환하는 방법
    - 시간 복잡도: O(n^2)
    - 공간 복잡도: O(1)
  • 삽입 정렬: 정렬되지 않은 부분에서 요소를 가져와 정렬된 부부에 적절한 위치에 삽입하는 방법
    - 시간 복잡도: O(n^2)
    - 공간 복잡도: O(1)
  • 퀵 정렬: 피벗을 기준으로 작은 요소는 왼쪽, 큰 요소는 오른쪽으로 분할하고 재귀적으로 정렬
    - 시간 복잡도: O(n^2)
    - 공간 복잡도: O(n)
  • 병합 정렬: 배열을 반으로 나누고, 각 부분을 재귀적으로 정렬한 후, 병합하는 방법
    - 시간 복잡도: O(nlogn)
    - 공간 복잡도: O(n)

Sort(): 배열이나 리스트의 요소 오름차순 정렬 메서드.

탐색 알고리즘: 주어진 데이터 집합에서 특정 항목을 찾는 방법

  • 선형 탐색: 배열의 각 요소를 하나씩 차례대로 검사하여 원하는 항목 탐색
    - 시간 복잡도: O(n)
  • 이진 탐색: 정렬된 배열에서 중간 요소와 찾고자 하는 항목을 비교하여 대상이 중간 요소보다 작으면 왼쪽, 크면 오른쪽 탐색
    - 시간 복잡도: O(logn)

그래프

  • DFS: 루트에서 시작하여 가능한 한 깊이 들어가서 노드 탐색 -> 다음 노드 탐색
    - 시간 복잡도: O(V+E) (V: 노드 수, E: 간선 수)
  • BFS: 루트에서 시작하여 가까운 노드부터 방문 -> 다음 레벨 노드 방문
    - 시간 복잡도: O(V+E)

C# 체크리스트 <메소드>

참조 매개변수

  • 값이 아닌 참조로 전달되어 원본 변수의 값 변경 가능
  • 매개변수 생성 시 ref 키워드를 통해 작성

출력 매개변수

  • 메서드 내에서 값을 할당하여 변환
  • out 키워드를 사용하여 작성
  • 메서드 내에서 값을 반드시 할당해야 함
  • 함수 호출 시 새 변수 생성하여 적용 가능
  • 외부 변수의 경우 ref 처럼 변경사항이 원본에 할당

개인 과제

TryParse(): 변환 성공 시 true 반환, out 변수에 변환된 값 저장, 실패 시 false 반환하고 out 변수는 기본값 0 유지

TryGetValue(): Dictionary에서 특정 키를 찾고, 값이 있으면 꺼내옴.

  • 키가 존재하면 true 반환하고 out에 해당 값 저장
  • 키가 없으면 false 반환하고 out은 null 유지

File 클래스

  • File.WriteAllText("파일", "내용"); // 파일 쓰기
  • string content = File.ReadAllText("파일"); // 파일 읽기
  • File.Exists("파일"); // 파일 존재 여부 확인
  • File.Delete("파일"); // 파일이 존재하면 삭제
  • File.Copy("파일", "새 파일", true); // 새 파일로 복사 true면 동일한 파일이 존재해도 덮어씀.
  • File.Move("파일", "새 경로"); // 새 경로로 파일 이동

0개의 댓글