반응형 전체 글552 C# - 문자열로 이루어진 리스트 요소들을 정수로 바꾸는법 +) 지연 평가(Lazy Evaluation) 문자열로 이루어진 리스트 요소들을 정수로 바꾸는법을 알아보자 Select 컬렉션 내의 요소를 새로운 형식으로 변환하고 그 결과를 새로운 컬렉션으로 반환하는 기능을 제공 public static IEnumerable Select(this IEnumerable source, Func selector); 매개변수 source : 데이터를 가지고 있는 원본 컬렉션 selector : 변환 작업을 수행하는 함수 또는 람다 표현식 코드 예시 List numbers = new List { "1", "2", "3", "4", "5" }; var intNumbers = numbers.Select(int.Parse).ToList(); ToList을 해주어야하는 이유 Select의 결과를 ToList로 변환하면 문자열을 정.. 2023. 9. 1. C# - IEnumerable설명 및 메서드(MIN,MAX,Average등) Enumerable static class로 System.Linq namespace에 속해져있다. LINQ(Language Integrated Query)를 이용해서 데이터를 검색,정렬,변환등 작업을 수행한다. Enumberable메서드는 IEnumberable형식의 컬렉션에 대해 사용되며 이를 통해 컬렉션의 요소를 쿼리하고 조작할 수 있다. IEnumerable C#에서 컬렉션을 나타내는 기본 인터페이스이다. 컬렉션의 요소를 열겨하고 반복하는 기능을 정의한다. 즉 각요소에 접근하고 처리할 수 있게 해준다. 이를 활용하여 배열, 리스트, 딕셔너리등 다양한 컬렉션 유형을 순회하거나 LINQ에 활용할 수 있다. namespace System.Collections { public interface IEnume.. 2023. 8. 28. 프로그래머스 C# - 최댓값과 최솟값 나의 풀이 public class Solution { public string solution(string s) { string answer = ""; string[] token = s.Split(' '); int[] int_token = new int[token.Length]; for(int i =0; i 2023. 8. 28. C# - 동적 배열 구현 동적 배열 구현1. 기본 설정class MyList{ const int DEFAULT_SIZE = 12; T[] _data = new T[DEFAULT_SIZE]; public int Count=0; // 실제로 사용중인 데이터 개수 public int Capacity { get { return _data.Length; } } // 예약된 데이터 개수}2. Addpublic void Add(T item){ // 1. 공간이 충분히 남아 있는지 확인 if(Count >= Capacity) { // 공간을 다시 늘려서 확보 T[] newArray = new T[Count * 2]; for (int i = 0; i 시간 복잡도 : O(.. 2023. 8. 28. C# - 배열, 동적 배열, 연결 리스트 비교 선형 구조 자료를 순차적으로 나열한 형태 ex) 배열, 연결 리스트, 스택 / 큐 비선형 구조 하나의 자료 뒤에 다수의 자료가 올 수 있는 형태 ex ) 트리, 그래프 배열(Array) 고정된 크기의 메모리 블록에 원소들을 순차적으로 저장, 이 원소들은 정해진 크기를 절대 변경할 수 없다 연속된 메모리 공간에 저장되기 때문에 인덱스를 통해 O(1)시간에 RandomAccess가 가능하다. 장점 : 메모리 접근이 빠르고 예측 가능하다. 단점 : 크기 변경이 어렵고 중간에 삽입/삭제가 비효율적이다. 동적 배열(Dynamic Array) 배열의 크기를 동적으로 변경할 수 있다. 처음에는 작은 크기로 시작하여 필요에 따라 크기를 늘려가면서 데이터를 저장한다. 그렇기 때문에 일반적으로 더 큰 메모리 블록을 할당하.. 2023. 8. 28. 네트워크 프로그래밍 - XML문서에서 패킷 패싱 및 패킷 데이터를 자동화 방식으로 읽고 쓸 수있는 형태의 템플릿 정의 XML문서에서 패킷 패싱하기public static void ParsePacket(XmlReader r)01 현재 Xml노드타입이 종료 요소인지 확인 if (r.NodeType == XmlNodeType.EndElement) return;02 현재 요소의 이름이 packet인지 확인이름이 packet이 아닌 경우 무효한 패킷 노드로 간주하고 적절한 오류 메시지 출력if (r.Name.ToLower() != "packet"){ Console.WriteLine("Invaild packet node"); return;}03 name attribute값 확인name어트리뷰트 값이 없거나 빈 문자열인 경우 오류메시지 출력string packetName = r["name"];if(string.IsN.. 2023. 8. 20. 이전 1 ··· 50 51 52 53 54 55 56 ··· 92 다음 반응형