GithubHelp home page GithubHelp logo

onedayonealgorithm's Introduction

One Day One Algorithm

By Lhamed ( 정윤재 )

Intro

개인적 문제 해결 능력 향상을 위해서 매일 한 문제씩 알고리즘 문제를 풀어보고 , 그에 대한 풀이(모범답안)과 내 풀이의 문제점등을 살펴본다. 딱히 알고리즘 공부만을 집중적으로 해본적은 없는 상태이지만, 무작정 알고리즘 지식을 쌓기 보다는 , 시행착오를 직접 겪으면서 학습 효율을 높인다. 사용언어는 우선은 C# , 효율이 좋아지면, C++ 로도 풀어볼 예정이다.

Log


#####[ 2019년 8월 4일 ]

첫 날, 문득 든 생각이 괜찮은 것 같아 내친김에 저장소를 만들었다. 뭔가 이런식으로 , 만들고 꾸준히 관리하지 않는 저장소가 꽤나 많아지기는 했지만, 시도를 많이 하는 것이 흠이라고는 생각하지 않는다. 그것들로 배운 것은 많으니까. ================ 문제 풀이 후 =============================== 생각보다 체력소모가 굉장히 크고, 자잘한 실수 부터 큰 흐름을 놓치는 것 까지 아직 문제가 많다. 첫술에 배부를 순 없으니 당연한 것이라고 생각한다. 나름의 작은 위안은 , 문제 접근 방식이나 풀이로 보면 거의 근접했다는 것이다. 수학 공부도 지속적으로 해야 할 것 같다. 결국 답을 맞추지는 못했지만, 나름 대로 재미있었고 , 푹 집중해서 밥먹는 것도 잊었다. 기하학적으로 접근하는 것이라는 아이디어를 혼자서 깨달았다는 데 기뻤다.


#####[ 2019년 8월 4일 ]

피곤하지만, 일단 알고리즘 테스트 하나만 한시간 보기로하고 시작했다. ================ 문제 풀이 후 =============================== 결국 2시간 내내 붙잡고 있었다. 1시간 정도에 답을 내긴했지만, 시간 초과 였고, 나중에 알아보니 이 문제는 동적프로그래밍 문제여서 메모라이제이션을 써서 연산 대신 메모리에 답을 미리 저장하는 식으로 해결해야 하는 것이었다. 이번에는 또 너무 수학적으로만 접근해서 피보나치수열의 일반항을 뽑아내려고 하다가 실패했다. ( 그것도 실패하고, 문제풀이도 실패) 처음에 시간초과 걸렸을 때 , "캐싱"을 해서 풀어야 겠다는 생각을 했지만, 그것 마저도 마음처럼 되지는 않았다. (재귀가 문제인가 싶기도 하다. )


#####[ 2019년 8월 20일 ]

정말 오랫만에, 푼다. 늘 그렇듯 좀 늘어졌다. 피곤하기도 했고, 두문제 연이어 틀리니 조금 사기가 떨어진 것 같다. ================ 문제 풀이 후 =============================== 30 분 정도 되어서 , 2번의 제출 끝에 맞았다. 사람은 생각하는 갈대라더니, 그새 자신감이 좀 붙었다. 대신, Bool 연산에 대해서 모르는 부분이 있어서 주춤 댔던 것을 반성하면서, 다시 내용을 조사해 찾아넣었다. xor 연산 따위를 어디다 쓰지? 했던 과거도 반성


#####[ 2019년 10월 1일 ]

시간은 정말 빠르다. 회사 일에서 필요해서 node.js 조금 더 보느라 늦었단 핑계를 대보며 간만에 알고리즘 풀이를 한다. ================ 문제 풀이 후 =============================== 시간초과가 나서 못풀었지만, 어쨌거나 답은 나왔다. 하지만 무엇에 관한 문제를 푸는지 전혀 몰랐다. ( 그런데도 대강의 흐름은 읽었으니 어찌보면 고무적이다. ) graph 자료구조와 , sort 쪽의 기반지식이 부족해서 처음 이해하는 시간이 오래 걸렸다. 정답 기준이 1초 연산인데 비해 , 14초 정도 걸린다 ㅠ. 나중에 내 풀이를 보고 최적화 해보자 .

onedayonealgorithm's People

Contributors

lhamed avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.