티스토리 뷰
======================================================
안녕하세요 Doridori 입니다.
이번강의는 LinkedList와 SortedList에 대해서 진행해 보았습니다.
List에 대해 파생된 내용으로 생각할 수 있으나 SortedList의 경우 List 보다는 Dictionary쪽에 더 가깝지 않나 싶습니다. ㅎ
강의가 조금 급하게 준비된 느낌이 있는데
제가 중국으로 출장을 가게 되었습니다.
중국쪽에서 급하게 인원이 필요하다고 하여 4개월 정도 지원을 가게 되었습니다.
(8월말엘 돌아오는것이 목표이긴하지만 돌아와서 다시 정신차리고 강의준비를 하고 하면 9월정도로 생각 하고 있습니다.)
1년 반정도를 열심히 준비하고 이제 조금씩 알아주시는데 아쉬운 마음이 가득합니다.
하지만 가장으로써 먹고 사는게 우선이다보니 ㅎㅎ
그동안 제 강의에 관심을 가져 주신분들 모두 감사드리며 댓글과 구독모두 강의를 이어나가는데 매우 힘이 되었습니다. ^^
지금은 잠시 재충전한다고 생각하고 9월 쯤에 다시 돌아오도록 하겠습니다. m(_._)m
다들 화이팅 입니다.!!!
======================================================
36. LinkedList, SortedList
Source UI) Study_36_LinkedList_SortedList (UI).zip
Soruce 전체) Study_36_LinkedList_SortedList.zip
교재) 36. LinkedList SortedList.pdf
List에서 파생되는 Data 형태들이 많은데 그 중에서 LinkedList와 SortedList에 대해서 문의 주셔서 준비하게 되었습니다.
기본 List 형태에서 Data를 파싱하여 사용할수도 있지만 파생된 형태들에 대해서도 알고 있으면 적재적소에 사용하는데 많은 도움이 됩니다.
(사용하라고 만들어놓은 Class들이기 때문에 소스가 간결해집니다.)
내부 제어 구조에 대해서는 궁금하시면 구글링해서 찾아보시면 더 도움이 될것같으며
저는 이것들을 왜 사용해야하는지? 사용하면 기존 List에 비해 어떤것이 조금더 편해지는지에 대해 적어 보려고 합니다.
LinkedList의 경우 List에서 파생되었으며 List 중간에 값을 넣을수 있다 정도를 기억하시면 될것 같으며,
SortedList의 경우 Dictionary에서 파생되었으며 Key 값이 정령된 형태로 입력된다다고 보시면 될것 같습니다.
(SortedDictionary도 있긴하지만 이건 다음에 기회가 된다면 . . . ㅎㅎ)
(UI)
LinkedList에 관한 예제도 준비하려고 하였는데 출장 준비로 시간이 나오질 않아 기존에 준비하던 내용들만 가지고 급하게 정리하였습니다.
LinkedList는 어떤 건지 예제만 잠시 다루고 SortedList에 대해서 강의를 준비 하였습니다.
기본적으로 작성하는 Scheduler에 관한 내용입니다.
이후에 DB 연동을 해야 제대로 된 프로그램이라고 할수 있겠으나 . . .
다녀와서 하겠습니다. ㅎㅎ
강의)
이번강의는 그렇게 길지 않으니 가볍게 보시면 좋을것 같습니다. ㅎ
UI의 경우 MonthCalender를 사용해 보았습니다. (이제 할만한 Control이 많이 남지 않은것 같습니다 .ㅎ)
Source)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace _36_SortedList { public partial class Form1 : Form { SortedList<DateTime, string> slScheduler = new SortedList<DateTime, string>(); //Dictionary<DateTime, string> dScheduler = new Dictionary<DateTime, string>(); public Form1() { InitializeComponent(); } private void btnScheduler_Click(object sender, EventArgs e) { // Linked List //LinkedList<string> sLinkTest = new LinkedList<string>(); //for (int i = 0; i < 10; i++) //{ // sLinkTest.AddLast(i.ToString()); //} //var findnode = sLinkTest.Find("5"); //sLinkTest.AddAfter(findnode, "NewValue"); // Sorted List DateTime dSetDate = mcScheduler.SelectionStart; if (!slScheduler.ContainsKey(dSetDate)) { slScheduler.Add(dSetDate, tboxScheduler.Text); mcScheduler.AddBoldedDate(dSetDate); mcScheduler.UpdateBoldedDates(); //lboxScheduler.Items.Add(string.Format("{0} : {1}", dSetDate.ToString(), tboxScheduler.Text)); } lboxScheduler.Items.Clear(); foreach (KeyValuePair<DateTime, string> oitem in slScheduler) { lboxScheduler.Items.Add(string.Format("{0} : {1}", oitem.Key.ToString("yyyy-MM-dd"), oitem.Value)); } } private void mcScheduler_DateChanged(object sender, DateRangeEventArgs e) { DateTime dSetDate = mcScheduler.SelectionStart; if (slScheduler.ContainsKey(dSetDate)) { tboxScheduler.Text = slScheduler[dSetDate]; } else { tboxScheduler.Text = string.Empty; } } } } | cs |
'C# > C# 강좌 Winform' 카테고리의 다른 글
Doridori C# 강의 2) 38. Lock (8) | 2019.11.27 |
---|---|
Doridori C# 강의 2) 37. 재귀 함수 (Recursion Function) (6) | 2019.11.14 |
Doridori C# 강의 2) 35. Coding 및 Code 정리 (Program 만들기) (12) | 2019.04.26 |
Doridori C# 강의 2) 34. Layout 간 Event 제어 (FlowLayoutPanel) (8) | 2019.04.14 |
Doridori C# 강의 2) 33. 동적 Layout (TableLayoutPanel, SplitContainer) (17) | 2019.04.05 |
- Total
- Today
- Yesterday
- 게임
- 가볼만한 곳
- Visual Studio
- 도리도리
- 모바일
- 전통주
- 아이랑
- 광저우
- C#
- 소주
- 와인
- C# 강의
- 가볼만한곳
- 보드카
- 도리도리 C#
- 서울
- 증류주
- 막걸리
- 칵테일
- 프로그램 강의
- 하이볼
- 위스키
- WinForm
- 주말
- 맥주
- 나들이
- 맛집
- C# 기초 강의
- C# 강좌
- 술
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |