반응형 분류 전체보기552 C# - SortedSet, SortedDictonary (기본생성자, IComparer생성자) SortedSet 중복된 요소를 허용하지 않고 정렬된 순서로 요소를 저장하는 집합이다. 이진 검색 트리로 구현되어 있어 요소의 삽입, 삭제, 검색 등의 작업이 빠르게 수행된다. 01 기본 생성자 아래 생성자는 기본적으로 오름차순으로 정렬된 SortedSet을 생성한다. public SortedSet () 예시 SortedSet sortedSet = new SortedSet(); 02 사용자 지정 비교자(comparer) 생성자 요소의 비교 방법을 사용자가 원하는 방식으로 지정하여 SortedSet을 생성한다. public SortedSet (System.Collections.Generic.IComparer? comparer); 예시 SortedSet sortedSet = new SortedSet(new .. 2024. 3. 17. C# - 백준 코드 처리 속도(실행 시간) 측정 방법 +) Stopwatch 프로퍼티 및 메서드 설명 Stopwatch Stopwatch 클래스를 사용하기 위해서는 using System.Diagnostics; 네임스페이스를 추가해야한다. using System.Diagnostics; 01 인스턴스 생성 및 코드 실행 시간 측정 시작 Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); 02 코드 실행 시간 측정 종료 stopwatch.Stop(); 03 코드 실행 시간 출력 // 측정된 시간 출력 Console.WriteLine($"코드 실행 시간: {stopwatch.Elapsed}"); // 측정된 시간 출력 (밀리초 단위) Console.WriteLine($"코드 실행 시간 (밀리초): {stopwatch.ElapsedMilliseconds}");.. 2024. 3. 17. C# - 우선순위 큐(Priority Queue)와 힙(Heap) Queue 큐는 FIFO구조로 먼저 들어온 데이터가 먼저 나가는 구조이다. Priority Queue 들어간 순서와 상관없이 우선순위가 높은 데이터가 먼저 나온다. 예를 들어 물건 데이터를 자료구조에 넣었다가 가치가 높은 물건보다 꺼내서 확인해야 하는 경우이다. 우선순위큐를 구현하는 방법 01 리스트를 이용 데이터의 개수가 N개 일 때, 구현 방식에 따라서 시간 복잡도 삽입시간 O(1), 삭제 시간 O(N) 02 힙(Heap)을 이용 데이터의 개수가 N개 일 때, 구현 방식에 따라서 시간 복잡도 삽입시간 O(logN) (힙의 조건을 유지하기 위해 부모 노드와 비교하면서 올라간다) ,삭제 시간 O(logN)(루트 노드를 삭제한 후 힙을 재조정해야 한다) Heap 완전 이진 트리 자료 구조의 일종이다. 항상.. 2024. 3. 16. GitHub - 브랜치(branch) 이용해서 fetch,pull,add, commit, push 해보기 +) branch관련 명령어들 브랜치(branch)와 관련된 명령어들 01 브랜치 목록 보기 현재 저장소의 브랜치 목록들을 확인할 수 있다. $ git branch main examplebranch 02 브랜치 생성 $ git branch code-piggy // "code-piggy" 이름의 브랜치 생성 03 다른 브랜치로 전환 $ git checkout pinkpig // "pinkpig" 브랜치로 전환 04 브랜치 병합 $ git merge bluepiggy // 현재 브랜치에 bluepiggy 병합 05 브랜치 이름 바꾸기 $ git branch -m beforename aftername Fetch 하는 법 먼저 fetch를 하는 이유를 알아보자. 이를 이용해서 원격 저장소의 최신 변경 사항을 확인할 수 있기 때문에 충돌을 줄.. 2024. 3. 15. GitHub - 로컬 저장소, 원격저장소(git remote명령어들) 추가, 폴더 만들기(mkdir), 경로 변경(cd) 로컬 저장소 만들기 01 git init git init명령을 현재 디렉토리에 새로운 Git 저장소가 생성된다. 그리고 기본설정(이름,이메일 주소 등과 브랜치)이 초기화된다. 그래서 보통 새로운 프로젝트를 시작하거나 기존 프로젝트를 Git으로 관리하기 시작할때 사용된다. $ git init 원격 저장소 추가 01 원격 저장소 주소 확인하는 법 가져오고 싶은 Git Repository로 들어가서 Code를 누른다음 아래와 같이 HTTPS부분에서 주소를 확인할 수 있다. 02 원격 저장소 추가 그리고 아래와 같이 입력하면 된다. 그러면 새롭게 저장소가 추가된다. $ git remote add origin code-piggy/example.git git remote와 관련된 명령어들 01 git remote .. 2024. 3. 15. 백준 C# - 1987 풀다보니 백트래킹 문제였다. 풀다보니 헷갈린게 있어서 버벅거렸다 하핳.. 아래 링크에 있는 알고리즘의 큰 맥란이 매우 비슷하다! 알고리즘에 대한 자세한 설명은 아래 게시글에 있다. 백준 C# - 15649 +) 풀이 대표적인 백트래킹 문제이다. 백트래킹 모든 경우의 수를 탐색하며 더 이상 해가 나올 것 같지 않으면 이전으로 돌아가서 다른 경우를 탐색한다. 풀이 원래 알던 DFS 알고리즘에서는 visited[i] = tru code-piggy.tistory.com 코드 전문 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace baek2 { class Program { static char.. 2024. 3. 12. 이전 1 ··· 14 15 16 17 18 19 20 ··· 92 다음 반응형