![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/xjwfh/btqRGq2qNrV/mn375h7tDThYaXeR5GU1D1/img.png)
C#의 Collection에 속한 LinkedList에 관한 글입니다. 이 글도 완벽한 성능 분석이 아닌, C++에서 사용한 List의 간단한 사용법과 비교하면서 중요하고 주로 사용했던 부분들에 대한 정보를 공유하고자 글을 작성하였습니다. 이 글은 C++의 STL으로 다룰 줄 아시는 분 or 사용해본 경험이 있다는 것을 전제로 작성하였습니다. 글은 MS의 MSDN을 참고했고 틀린 부분은 댓글을 달아주시면 확인 후 수정하도록 하겠습니다 ^_^ 1. LinkedList의 특성 C++의 list와 비슷합니다. 양방향 연결 리스트이며 동적으로 메모리를 관리해주고 자유롭게 삽입, 삭제가 가능한.. 자료구조입니다. 대부분의 교재 및 자료(블로그)에서 List, Queue, Stack, Dictionary만 설명해주..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bJz0JP/btqSduoBDa1/sKwA4mYjg2atI3i3zEGsh1/img.png)
XML과 비슷하게 JSON도 데이터 전송에 있어서 중요한 역할을 한다. JSON은 JavaScript Object Notation 으로, 특별한 자료구조가 아닌 그냥 JS에서 쓰던 object구조랑 똑같다. 개인적인 생각이지만 xml보단 json을 많이 쓰게 되지 않을까 싶다(조사나 통계를 찾아보지 않았지만 지금도 JSON을 많이 쓰고 있을 것 같다). Docker에서는 Json과 yaml파일만 중점으로 다루는데 역시 xml보단 json이 더 중요하지 않을까 싶다. 그래도 가독성은 xml이 조금 더 좋은 것 같다. 여튼.. JSON 데이터를 받을 때 어떻게 파싱할 것인지 간단하게 알아보자. 1. C#에서의 JSON parsing 우선, JSON의 구조에 대해서는 다 알고 있다고 가정하겠습니다. 배열[],..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bjQNEA/btqR9nbyj4q/QOTaWDTtsso1h5MYtsJlYk/img.png)
XML은 데이터 전송에 있어서 중요한 역할을 한다. 어떤 특성을 갖고 있는지, 이런 것에 관해서는 다른 글이나 문서에 아주 정확하게 나와있기 때문에 생략하고, 예전부터 XML, JSON의 형태로 데이터를 많이 주고받는데 과연 어떻게 parsing 할 수 있을지.. 정리가 필요한 것 같아 정리해보았다. 아주 컴팩트하게 데이터를 받을 때, 어떻게 파싱 해서 사용할 것인지에 대해 정리해보았다. 1. C#에서의 XML 파싱 우선 XML에 대한 기본지식은 다 있다고 가정하고 말씀드리겠습니다. 1.1) Node가 1개인 예제 다음 xml의 예시가 있다고 하자.(출처는 w3schools.com입니다. note.xml이라는 이름을 가짐.) Tove Jani Reminder Don't forget me this week..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/oL2M4/btqR9mwGWhQ/oBTAuMnpF0VtdNQfB8NGO0/img.png)
1. 문제 링크 www.acmicpc.net/problem/9177 9177번: 단어 섞기 세 개의 단어가 주어졌을때, 꿍은 첫 번째 단어와 두 번째 단어를 섞어서 세 번째 단어를 만들 수 있는지 궁금해졌다. 첫 번째와 두 번째 단어는 마음대로 섞어도 되지만 원래의 순서는 섞여서는 www.acmicpc.net 2. 문제 개요 세 개의 단어가 주어졌을 때, 첫 번째 단어와 두 번째 단어를 섞어서 세 번째 단어를 만들 수 있는지 계산하는 프로그램을 만들어보자. 3. 문제 힌트 완전탐색을 하면 어떻게 될까..? aaab aaac aaabaaac이 입력으로 주어지고, 세 번째 단어인 aaabaaac의 왼쪽 끝에서 오른쪽 끝으로 탐색을 한다고 해보자. 첫 번째 a는 "aaab"의 a인지, "aaac"의 a인지 알..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/97w29/btqRL3EWiOH/cdDCIY7UnDbf9raFmT0LGK/img.png)
1. 문제 링크 www.acmicpc.net/problem/3108 3108번: 로고 로고는 주로 교육용에 쓰이는 프로그래밍 언어이다. 로고의 가장 큰 특징은 거북이 로봇인데, 사용자는 이 거북이 로봇을 움직이는 명령을 입력해 화면에 도형을 그릴 수 있다. 거북이는 위치와 www.acmicpc.net 2. 문제 개요 제일 처음에 거북이는 (0,0)에 있고 연필을 내리고 있다. 축에 평행한 직사각형 N개가 주어졌을 때, 이 직사각형을 그리는데 필요한 PU명령의 최솟값을 구하는 프로그램을 작성하시오. 3. 문제 힌트 각 직사각형들이 교차하거나 한 점에서 만나면 1번만 내리고도 다 그릴 수 있다. -> 한 칸이 연결되어 있다면 다 그릴 수 있다. -> BFS 그럼 '각 점이 교차한다거나, 한 칸이 연결되어 있..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bhKDJY/btqRGqM1a0L/yKi5h7mZf8oCoB94FcW0UK/img.png)
1. 문제 링크 www.acmicpc.net/problem/12886 12886번: 돌 그룹 오늘 강호는 돌을 이용해 재미있는 게임을 하려고 한다. 먼저, 돌 세개는 그룹으로 나누어져 있으며 각각의 그룹에는 돌이 A, B, C개가 있다. 강호는 모든 그룹에 있는 돌의 개수를 같게 만들려고 www.acmicpc.net 2. 문제 개요 A, B, C 3개의 돌이 있다. 모든 그룹에 있는 돌의 개수를 같게 만들려고 한다. 크기가 같지 않은 두 그룹을 고른다. 그다음, 돌의 개수가 작은 쪽을 X, 큰 쪽을 Y라고 했을 때, X는 X+X로, Y는 Y-X개로 만든다. A, B, C가 주어졌을 때, 강호가 돌을 같은 개수로 만들 수 있으면 1을, 아니면 0을 출력하는 프로그램을 작성하시오. 3. 문제 힌트 가장 간단..