분류 전체보기37 1. Two Sum 문제 https://leetcode.com/problems/two-sum/ Two Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 풀이 impl Solution { pub fn two_sum(nums: Vec, target: i32) -> Vec { let mut answer = Vec::new(); for i in 0..nums.len() { for j in (i+1)..nums.len() { if nums[i] + nums[j] == target {.. 프로그래밍/리트코드(Rust) 2022. 4. 28. 코드리뷰 https://www.youtube.com/watch?v=ssDMIcPBqUE&t=5775 학습/공통 2022. 4. 28. 각종 거리 Manhattan Distance 2차원 좌표계의 경우 x축 거리의 차이와 y축 거리의 차이의 합이다 Euclidean distance 2차원 좌표계의 경우 x축 거리의 차이의 제곱과 y축 거리의 차이의 제곱의 합의 제곱근이다 참고문서 https://ko.wikipedia.org/wiki/맨해튼_거리 맨해튼 거리 - 위키백과, 우리 모두의 백과사전 맨해튼 거리(Manhattan distance, 혹은 택시 거리, L1 거리, 시가지 거리,Taxicab geometry)는 19세기의 수학자 헤르만 민코프스키가 고안한 용어로, 보통 유클리드 기하학의 거리 공간을 좌표에 표시된 두 ko.wikipedia.org https://ko.wikipedia.org/wiki/유클리드_거리 유클리드 거리 - 위키백과, 우.. 학습/알고리즘 2022. 4. 23. K-means Algorithm 정의 : 주어진 데이터를 k 개의 클러스터로 묶는 방법으로 각 클러스터의 중심점과 클러스터 내 오브젝트 간의 거리의 제곱합을 최소화 하는 것을 목표로 한다 클러스터의 중심점은 지속적으로 변경하며 클러스터를 구성한다 참고자료 https://ko.wikipedia.org/wiki/K-평균_알고리즘 학습/알고리즘 2022. 4. 23. 프로그래밍 기초와 실습 내가 대학교에 처음 갔을 때 들었던 컴퓨터공학 관련 첫 수업이다 1학년 때는 전공이 제대로 정해지지 않았었는데 컴퓨터공학 관련 수업이 이것 밖에 없어서 매우 아쉬웠던 기억이 있다 그 당시 교재는 '개념을 콕콕 잡아주는 C프로그래밍'이었고 부교재는 'C Programming: A Morden Approach'였다 내가 졸업할 때 쯤에는 프로그래밍 기초와 실습(이하 프기실)에서 더이상 C언어를 쓰지 않고 Python을 사용한다는 말을 들었는데 C언어를 어려워 했던 사람들이 많았기 때문에 잘 바뀌었다고 생각한다 C언어로 프로그래밍에 입문하고 웬만한 수업들을 C로 진행했기 때문에 C언어를 제대로 이해하지 못하면 이후 전공 수업에도 차질이 있었다 이해하지 못하는게 하나라도 있으면 질문과 검색으로 반드시 알아낸 후.. 학습/컴퓨터공학 2022. 2. 17. 컴퓨터공학 학습 정리 및 가이드 Intro 프로그래밍을 하는데 가장 중요한 것들은 무엇일까 그냥 컴파일이 되도록 코드를 짜서 기능이 동작하도록 하는 것은 이제 막 공부를 시작한 사람들에게 요구하는 수준일 것이다 현업에서 일하기 시작하고 요구되는 프로그래밍 실력에는 기능뿐만 아니라 성능, 유지보수, 확장성 등등 더 많은 것이 있다 그런 실력을 갖추기 위해서 필요한 것들이 누구나 찾지 못하게 숨겨놓거나 한 것은 또 아니라고 생각한다 컴퓨터공학이 연금술이나 마법이 아닌 것처럼 이론에 기반하여 발전해온 공학/과학이기 때문에 지금까지 배워왔던 내용에 숨겨져 있을 것이다 대학교 학부 때만 생각해도 여러가지 기초 과목들이 있었고 여러 전공 서적이 있었지만 시험 범위에 들어가는 단원들만 대충 보다 넘어가고 끝났던 기억이 있다 그렇게 넘겼던 내용들을 한번씩 곱씹.. 학습/컴퓨터공학 2022. 2. 16. Intro 가끔씩 번뜩이는 아이디어를 가지고 무언가를 만들려고 튜토리얼 영상과 학습 사이트를 보면서 프로젝트를 시작해보지만 어느 순간에 프로젝트 진행이 막히고 그대로 사장이 된다. 그 이유는 내가 구현하려는 기능을 만들기 위해서는 무엇이 부족하고 무엇을 공부해야 바로 적용할 수 있는지를 모르기 때문이라고 생각한다 그리고 취미로 매번 그렇게 사이드 프로젝트를 시작하는 것은 좋지만 제일 중요한게 지금 직장에서의 커리어를 제대로 유지하고 발전해나가는 것이다 그동안 배웠던 내용들에 대해서 찬찬히 정리하면서 알고 있는 내용들은 왜 배워야되는지에 대해서 적어보면서 프로그래밍의 길을 걷는 다른 사람들에게도 도움이 되도록 하려고 한다 학습/공통 2022. 2. 16. 개발환경 변경 개발환경을 윈도우에서 맥OS로 변경 XCode 기반으로 개발 예정이며 노베이스이기 때문에 공부하면서 해야겠다 프로그래밍/크로키 슬라이드 앱 만들기 2021. 9. 19. 윈도우 앱 구현 - 사진 표시하기 단계를 세세히 나눈 것은 자주 프로젝트를 진행하는데 별로 도움이 되지 않은 것 같다 아무튼 계획은 다음과 같이 업데이트 하였다 화면 설계 : - 메인 창은 왼쪽과 오른쪽으로 나눠진다 - 왼쪽에서는 사진 목록을 추가할 버튼을 만든다 - 그 아래에 사진 목록이 표시되도록 한다 - 오른쪽에는 시작 버튼을 만든다 화면 구현 : - 사진 목록 추가 버튼을 눌렀을 때 파일 탐색기로 파일 추가를 할 수 있도록 한다 - 추가한 파일 이름이 아래 표시된다 사진 표시 : 추가한 파일이 사진으로 표시된다 새창 띄우기 : - 시작 버튼을 눌렀을 때 새 창이 표시된다 - 새 창에서는 아무 사진이나 우선 표시한다 - 시작 버튼을 눌렀을 때 추가한 사진 중 첫 번째 사진이 표시된다 사긴 표시 : - 메인 창에서 보여주는 시간을 입.. 카테고리 없음 2021. 5. 16. Vagrant Study 요즘 여러가지로 바쁜 와중에 NAS 설치와 vagrant 공부 때문에 조금 바빴다 vagrant 관련해서는 첫번째 목표는 nvme disk 4개인 vm을 자유자재로 만들고 on/off 하는 것이다 일단 가장 간단한 방법은 spdk-vagrant script를 사용하는 것이고 스크립트를 사용하기 위해서 내 노트북에는 WSL 환경을 구성하였다 docs.microsoft.com/ko-kr/windows/wsl/install-win10 Windows 10에 WSL 설치 Bash 터미널을 사용하여 Linux 배포(Ubuntu, Debian, SUSE, Kali, Fedora, Pengwin 및 Alpine 포함)를 Windows 10 머신에 설치하는 방법을 알아봅니다. docs.microsoft.com 위 링크를.. 프로그래밍 2021. 5. 10. 윈도우 앱 구현 - 파일 탐색기 사용하기 다음 단계 - 사진 목록 추가 버튼을 눌렀을 때 파일 탐색기로 파일 추가를 할 수 있도록 한다 - 추가한 파일 이름이 아래 표시된다 오늘 진행할 내용은 파일 탐색기를 이용하여 사진 목록 추가하기이다 파일 불러오기는 WPF에서 OpenFileDialog를 이용하는 듯하다 사진 추가 버튼을 눌렀을 때 OpenFileDialog가 실행되어야 하기 때문에 버튼에 대한 클릭 이벤트를 구현한다 // MainWindows.cs using Microsoft.Win32; private void ImageAdditionButton_Click(object sender, RoutedEventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "Image Fil.. 카테고리 없음 2021. 4. 12. 윈도우 앱 화면 구현하기 설계는 지난 포스트에서 완료하였고 이번 게시물부터는 실제 코드 구현을 해보도록 한다 반복해서 말하듯이 Winforms 프로그래밍 개발에 익숙하지 않으므로 학습을 하면서 개발을 하고 있는 중이다 처음 구현할 내용은 다음과 같다 첫 단계 - 메인 창은 왼쪽과 오른쪽으로 나눠진다 - 왼쪽에서는 사진 목록을 추가할 버튼을 만든다 - 그 아래에 사진 목록이 표시되도록 한다 - 오른쪽에는 시작 버튼을 만든다 Winforms 개발을 하기에 앞서 WPF에 대해서 검토를 하고 진행해야할 것 같다 WPF는 Windows Presentation Foundation의 약자로 Winforms 이후에 나온 GUI로 최근의 각종 기준들에 부합하고 더 많은 유연성을 제공한다고 한다 그래서 지난번에 만들었던 프로젝트 파일은 폐기하고 .. 프로그래밍/크로키 슬라이드 앱 만들기 2021. 4. 5. 이전 1 2 3 4 다음