목록전체 글 (59)
열심히 코딩 하숭!

https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 문제 수열이 주어지면, 해당 수열을 스택을 통해 만들 수 있는지 알아내는 문제 주의사항: 모든 값들은 오름차순으로 삽입되어야 함 풀이 도합 3시간 정도만에 겨우 성공했다. 문제가 어렵다기보다는, 내가 이해를 잘못해서 원하는 결과가 잘 안 나왔던 것 같다. 그리고 아쉬웠던 점은, 스택만 이용하여 이것저것 조건을 넣어 ..

https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 문제 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성..

https://www.acmicpc.net/problem/1725 1725번: 히스토그램 첫 행에는 N (1 ≤ N ≤ 100,000) 이 주어진다. N은 히스토그램의 가로 칸의 수이다. 다음 N 행에 걸쳐 각 칸의 높이가 왼쪽에서부터 차례대로 주어진다. 각 칸의 높이는 1,000,000,000보다 작거나 같은 www.acmicpc.net > 주어진 히스토그램에 대해, 가장 큰 직사각형의 넓이를 구하는 문제이다. 간단한~ 문제라고 생각했는데, 처음에 스택을 이용해서 어떻게 풀어야 좋을지 감이 오지 않아서 풀이 방법을 찾아보고, 이해하면서 작성하였다. 풀이 해당 문제는 스택으로 풀거나 분할 정복을 이용해서 풀 수 있는데, 분할 정복은 아직 이해가 되지 않아서... 스택으로 해결하는 방법만 적어보려고 한다...

https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 문제 간단한 스택 문제! 괄호의 짝을 찾으면 된다. '('를 만나면 stack에 1을 넣고 ')'를 만나면 넣었던 1을 빼주면 된다. 풀이 #include #include #include using namespace std; bool isPS(string str) { int str_length = str.length(); stack st; for (int i = 0;..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 1일 사용자 행동 인식 데이터를 이용한 결정 트리 실습 - 4장 4.2 결정트리 참고 앙상블 학습의 개요와 보팅(Voting)의 이해 앙상블 학습 - 여러 개의 분류기를 생성하고 그 예측을 결합함으로써 보다 정확한 최종 예측을 도출 - 유형: 보팅(Voting), 배깅(Baggin), 부스팅(Boosting), 스태킹(Stacking) 등 - 단일 모델의 약점을 다수의 모델들을 결합하여 보완 보팅 - 여러 개의 분류기가 투표를 통해 최종 예측 결과를 결정 1) 하드 보팅 - classifier 간 다수결로 최종 class 결정 2) 소프트 보팅 - classifi..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 5일 분류(Classification) 개요와 결정트리(Decision Tree) 소개 분류 알고리즘 (Classification) - 주어진 데이터의 피처와 레이블값을 학습해서 모델 생성 - 생성된 모델에 새로운 데이터 값이 주어졌을 때, 미지의 값을 예측 결정 트리 개요 - 매우 쉽고 유연하게 적용될 수 있음 - 데이터의 스케일링이나 정규화 등의 사전 가공의 영향이 적음 - 예측 성능 향상을 위해 복잡한 규칙 구조를 가져야 하며, 이로 인해 과적합(overfitting)이 발생해 반대로 예측 성능이 저하될 수도 있다는 단점이 있음 앙상블 기법 개요 - 결정 트..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 3일 사이킷런으로 수행하는 타이타닉 생존자 예측 타이타닉 생존자 예측 - 데이터 전처리 - Null 처리 / 불필요한 속성 제거 / 인코딩 타이타닉 생존자 예측 - 모델 학습 및 검증/예측/평가 - 결정트리, 랜덤포레스트, 로지스틱 회귀 학습 비교 - K 폴드 교차 검증 - cross_val_score()와 GridSearchCV() 수행 코드 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns %matplotlib inline titanic_df =..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 1일 사이킷런 소개와 머신러닝 분류 예측 모델 개요 사이킷런(scikit-learn) - 쉽고 가장 python스러운 API를 제공함 - 머신러닝을 위한 매우 다양한 알고리즘과 개발을 위한 편리한 프레임워크, API 제공 - 주로 Numpy와 Scipy 기반 위에서 구축된 라이브러리 Feature(속성) - 데이터 세트의 일반적인 속성 - 타겟값을 제외한 나머지 속성이 모두 Feature 레이블, 클래스, 타겟(값), 결정(값) - 지도 학습 시 데이터의 학습을 위해 주어지는 정답 데이터 - 분류의 경우에는 이 결정값을 레이블 또는 클래스로 지칭 지도학습(Supe..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 민트색 - 발표할 때 짚고 넘어가면 좋을 것 같은 부분 1일 [0:03:04] 시각화를 시작하며 - 시각화 몰라도 너무 스트레스 받지 말자! [0:11:57] Matplotlib과 Seaborn 개요 및 비교 통계적인(statistical) 시각화 - Seaborn - 히스토그램, 바이올린 플롯, 산포도, 바차트, 분위, 상관 히트맵 중간 - Matplotlib 업무 분석(business analysis) 시각화 - Plotly - 바차트, 라인 플롯, 파이 차트, 영역 차트, 산포도, 방사형 차트, 버블 차트, 깔때기 차트 맷플롯립(Matplotlib) - 파이..

* 해당 글은 inflearn의 강의 '[개정판] 파이썬 머신러닝 완벽가이드'를 정리한 글입니다. 회색 - 강의 제목 노란색, 주황색 - 강조 민트색 - 발표할 때 짚고 넘어가면 좋을 것 같은 부분 [이전 글] 글 비밀번호 1234 https://chaesoong2.tistory.com/22 머신러닝 개념, numpy 알아보기 | 1주차 - 1 | 파이썬 머신러닝 완벽가이드 chaesoong2.tistory.com 위 글에 이어 작성합니다. 3일 [0:12:22] 판다스(Pandas) 개요와 기본 API - 01 판다스(Pandas)란? - 파이썬에서 데이터 처리를 돕는 라이브러리 - 많은 부분이 넘파이 기반으로 작성됨 - CSV 등의 파일을 쉽게 DataFrame으로 변경해 데이터 가공/분석을 편리하게..