여니의 프로그래밍 study/C, C++, C# 12

C# foreach문 제대로 알고 사용 하자!

블로거 여니입니다! 오늘은 C# foreach문에 대한 포스팅을 진행해보려고 합니다. foreach문은 배열을 순회하면서 각각의 데이터 요소들에 순서대로 접근을 할 수 있도록 해주는 역할을 해요 그래서 배열의 끝에 도달하게 되면 자동으로 반복이 종료됩니다 foreach (데이터형식 변수명 in 배열) { } foreach 문이 한번 반복을 수행할때마다 배열을 차례대로 접근하면서 변수에다가 담아줘요. 그래서 그 변수를 이용해서 원하는 구문을 실행하면 끝! 정말 간단하죠? (저도 공부하면서 배워나가는 중이라 부족한 부분이 있으면 댓글 남겨주세요..! 수정해서 올릴게요) num라는 변수에 배열 arr의 데이터들이 담겨서 출력되고 있는걸 확인할 수 있어요 foreach를 사용했더니 한번에 순회하는 것을 볼 수 ..

[C++로 쉽게 풀어쓴 자료구조] 7장 순환 요점정리

안녕하세요 공대생 블로거 여니입니다. 오늘은 7장 순환 요점정리 포스팅을 해보도록 하겠습니다. (C++로 쉽게 풀어쓴 자료구조 책을 참조하여 글을 쓰고 있습니다.) 1. 거듭제곱 계산 제일 먼저 거듭제곱 계산하는 프로그램에 대해 살펴보도록 하겠습니다. 반복문을 사용하는 방식과 순환 함수를 사용하는 방식 총 2가지가 있습니다. 알고리즘을 살펴보면, 만약 거듭제곱이 0이면 1을 반환하고 거듭제곱 n이 짝수, 홀수일 경우를 나눠서 return 해줍니다. 순환적인 거듭제곱 계산 프로그램에서도 반복문을 사용할 때와 차이가 별로 없습니다. 단지 자기 자신을 호출한다는 점 빼고는요. 2. 피보나치 프로그램 이번에는 피보나치 프로그램에 대해 살펴보도록 하겠습니다. 여기서도 순환과 반복 2가지 방식으로 코딩하는 방법이 ..

[C++로 쉽게 풀어쓴 자료구조] 9장 이진 탐색 트리의 연산 요점정리

안녕하세요 공대생 블로거 여니입니다. 오늘은 C++로 쉽게 풀어쓴 자료구조 9장 이진 탐색 트리의 연산 요점정리 포스팅을 해보려 합니다. 이진탐색 트리는 이진 트리 기반의 탐색을 위한 자료구조로 효율적인 탐색 작업을 위한 자료구조입니다. 이진 탐색 트리의 정의에 대해 잠깐 살펴보도록 해요! - 모든 노드는 유일한 키를 갖는다(힙에서도 잠깐 설명드렸지만 힙은 중복 가능하나 이진 탐색 트리는 X) - 왼쪽 서브트리의 키들은 루트의 키보다 작다. - 오른쪽 서브트리의 키들은 루트의 키보다 크다. - 왼쪽과 오른쪽 서브 트리도 이진 탐색 트리이다. 이진 탐색 트리의 연산에 대해 알아보아요. 1. 탐색 연산 - 비교한 결과가 같으면 탐색이 성공적으로 끝난다. - 비교한 결과 탐색 키가 루트 노드의 키 값보다 작으..

[C++로 쉽게 풀어쓴 자료구조] 10장 우선순위 큐 / 최대 힙 트리 삽입과 삭제, 정렬

안녕하세요 공대생 블로거 여니입니다. 오늘은 C++로 쉽게 풀어쓴 자료구조 10장 관련된 내용을 포스팅해보려고 합니다. 최대 힙 트리의 삽입, 삭제, 정렬 함수에 대해 설명해드리려고요! 일단 10장의 제목은 우선순위 큐입니다. 우선순위 큐는 데이터들이 우선순위를 가지고 있어 우선순위가 높은 데이터가 먼저 출력되는 자료구조입니다. 스택은 가장 최근에 들어온 데이터가 삭제되죠? 큐는 반대로 선입선출이니까 가장 먼저 들어온 데이터가 삭제되고요. 우선순위 큐는 가장 우선순위가 높은 데이터부터 삭제가 됩니다. 우선순위 큐는 배열, 연결 리스트 등 여러 가지 방법으로 구현이 가능하지만 그중에서도 가장 효율적인 구조는 힙 구조입니다! 힙이란? 힙은 완전 이진트리의 일종으로 우선순위 큐를 위해 만들어진 자료구조입니다...

C++로 쉽게 풀어쓴 자료구조 4장 연습문제 풀이

안녕하세요 공대생 블로거 여니입니다! 오늘은 c++로 쉽게 풀어쓴 자료구조 4장 연습문제 해답 포스팅을 올려보려고 합니다. 이 책은 해답이 안나와있어서.. 제가 올린 답이 틀릴 수도 있어요. (틀린 부분이 있다면 댓글로 꼭 알려주세요! 다시 정정할게요.) 그럼 이제 한번 풀어보도록 하겠습니다! 1번 문제. ① A,B,C,D,E ② E,D,C,B,A ③ A,B,C,E,D ④ B,A,C,D,E 답 -> 1번 (큐는 선입선출, 즉 먼저 들어간 데이터가 먼저 나오는 구조입니다. A,B,C,D,E 순으로 A가 먼저 들어갔으니 A가 먼저 나오는게 당연하겠죠?) 2번문제. 답 -> 7개 3번문제. 답 -> 40,50 4번문제. ①1 ②2 ③3 ④4 답 -> 2 5번문제. 공백상태에 해당하는 조건 --> ① front..

네이버웹마스터 수집보류 간단하게 해결하자!

안녕하세요 여니입니다~ 오늘은 네이버웹마스터 수집보류 해결방법에 대해 포스팅해보려고 합니다. 티스토리가 네이버에서 검색이 안되는건 알고 계시죠?ㅠㅠ 아직까지 우리나라는 네이버블로그가 우세해서.. 티스토리가 설 자리가 없..(말잇못) 다음에서 들어오는 방문자수랑,, 구글에서 들어오는 방문자수랑 합쳐도 네이버에는 비빌수 없어요 ㅠㅠ 그래서 네이버에 티스토리가 검색될 수 있도록 네이버웹마스터에 티스토리 블로그 주소를 등록해놨었는데요! 약 1주일? 정도 있으면 검색이 될거라고 해서 등록해놓고 기다리다가 오늘 들어가보니까 수집보류가 뜨더라구요? 그래서 해결방법을 찾아보다가 여러분들께도 알려드리고자 이렇게 포스팅을 합니다! 일단 수집보류.. 뭐가 문제일까 하고 보니! 티스토리 주소가 숫자로 되잇어서 그런거래요! ㅠ..

Visual Studio 클래스 다이어그램 보는 방법!

안녕하세요 공대생 블로거 여니입니다. 오늘은 Visual Studio에서 클래스 다이어그램을 보는 방법에 대해 포스팅해보려고 합니다. 일단 클래스다이어그램 보기 위해선 먼저 해주셔야하는 작업이 있어요! 비주얼 스튜디오를 실행시켜 주세요. 그리고 클래스 다이어 그램을 보고자 하는 프로젝트를 열어주세요.~ 클릭하게 되면 이 화면이 뜨게 됩니다 한 15초? 정도 인내심을 가지고 기다리게 되면 드디어 클래스 다이어그램 보기를 할 수 있는 화면이 뜨게 됩니다. 개별 구성요소를 클릭해주세요. 클릭 하고 나서 검색창에 클래스라고 쳐주세요. 물론 코드도구를 찾아서 클래스 디자이너 항목에 체크를 해주셔도 되지만,, 찾기 귀찮기 때문에 저는 클래스라고 검색 해서 바로 찾았어요! 클래스 디자이너 체크하고 수정버튼을 눌러서 ..

[C++로 쉽게 풀어쓴 자료구조] 미로 탐색 프로그램 ( 스택, 큐, 덱)

안녕하세요 여니입니다 오늘은 스택과 큐 덱을 이용한 미로탐색 프로그램에 대해 알아보는 시간을 가지려 합니다 (출처는 C++로 쉽게 풀어쓴 자료구조 책이구요!) 1. 스택을 이용한 미로 탐색 프로그램 일단 위에 있는 사진 보이시나요? 스택을 이용한 미로탐색 프로그램을 실행시킨 결과값인데요! 미로사이즈를 6X6으로 정하고 시작했습니다 일단 현재 위치를 나타내기 위해서 Location2D라는 헤더파일을 하나 작성해줍니다 struct Location2D { int row; // 현재 위치의 행 번호 int col; // 현재 위치의 열 번호 Location2D(int r = 0, int c = 0) { row = r; col = c; } bool isNeighbor(Location2D& p) { // 위치 p가..

[C++로 쉽게 풀어쓴 자료구조] 4장 원형 큐와 원형 덱에 대해서 알아보는 시간!

안녕하세요 여니입니다! 오늘은 쉽게 풀어쓴 C++ 4장 예제소스에 대한 포스팅을 진행하려고 합니다~ 지금 제가 올리는 원형큐 소스파일 인데요! 소스파일을 하나하나 분석하면서 공부하셔야 됩니다! (그래야 이해가 되더라구요.. 저도 지금 그렇게 하는 중입니다) #include #include #define MAX_QUEUE_SIZE 100 inline void error(const char * str) { printf("%s", str); exit(1); } class CircularQueue { protected: int front; //front값 int rear; // rear 값 int data[MAX_QUEUE_SIZE]; //int형 배열 선언 public: CircularQueue() { fro..

[C++로 쉽게 풀어쓴 자료구조] 3장 연습문제 해답 및 풀이

(출처 : C++로 쉽게 풀어쓴 자료구조) 안녕하세요 여니입니다 오늘은 쉽게 풀어쓴 자료구조 C++ 3장 연습문제 해답 및 풀이를 포스팅해보려고 합니다~ 1번문제 답 : 1번) D,A,B,C 2번문제 답 : 3번) 운영체제의 작업 스케줄링 --> (풀이) 스택이 아니라 큐의 응용 분야 3번문제 답 : 2번) head(front)와 tail(rear)의 2개 포인터를 갖고 있다 --> (풀이) 큐 4번문제 답 : Underflow --> (풀이) Underflow란 스택에 데이터가 없는데 데이터를 꺼내려고 할 때 오류가 발생 Overflow : 스택에 데이터가 꽉 찼는데도 불구하고 데이터를 넣으려고 할 때 오류가 발생 5번문제 답 : 1번) 오버플로우 처리 --> (풀이) 스택 포인터의 값이 스택의 길이값..