분류 전체보기
-
[ROS] 아두이노 dot matrix with MAX7219Engineer/Robotic 2017. 2. 19. 18:52
안녕하세요. 오랫만에 글을 올리는 꿈꾸는 개발자 몽키준입니다. 몇 주전에 구매했던 8x8 도트 매트릭스 모듈을 아두이노를 활용해 확인해 보려고 합니다. MAX7219 와 함께 날라온 빨간색 LED와 추가로 구매한 White led 를 비교해 보려고 합니다. 1. 구매정보 https://www.aliexpress.com/item/Smart-Electronics-MAX7219-Dot-Matrix-Microcontroller-MCU-LED-Display-Control-Module-Finished-Goods-for-arduino-Diy/32315049387.html? 2. LED control library of arduino http://playground.arduino.cc/Main/LedControlDem..
-
[알고리즘] 퀵정렬(QuickSort)Programing/Tips 2016. 11. 19. 14:14
안녕하세요. 꿈꾸는 개발자 몽키준입니다.이번에는 퀵정렬에 대해 알아보려고 하는데요. 아시는 바와 같이 정렬방법은 여러가지가 있지만 그중에서 나름 괜찮은(?) 속도로 구현이 가능한 정렬 방법이 퀵 정렬인 것 같습니다. 가운데를 기준으로 좌우 대칭적인 값을 가지고 있는 데이터의 경우 가장 효과적으로 정렬이 가능(O(n l og n)합니다만 worst case 로는 O(n^2) 의 복잡도를 가집니다. 코드에 들어가기에 앞서 간략하게 동작원리를 설명하자면, 저장된 데이터 중 하나를 피봇으로 잡고 피봇 왼쪽에는 피봇보다 작은 값이 위치하도록 하고 피봇 오른쪽엔 피봇보다 큰값을 채워준다. 이를 무한히(데이터가 1개 인 경우) 반복하여 정렬 하는 방법입니다. [퀵정렬 코드] void printSrc(const cha..
-
[알고리즘] Dijkstra's algorithmPrograming/Tips 2016. 11. 19. 14:13
안녕하세요. 꿈꾸는 개발자 몽키준입니다.이번에는 최단 경로(shortest path) 찾기 알고리즘 중의 하나인 데이크스트라 알고리즘(Dijkstra's algorithm) 에 대해 알아보려고 합니다.네덜란드 컴퓨터 과학자 이름이라는데 발음하기가 어렵네요. 저만 그런가요?일단 위키에서는 다음과 같이 알고리즘에 대해 소개를 하고 있습니다. 해당 알고리즘의 가정은 일단 출발점/도착점이 정해져야 하며 각 경로는 마이너스(-) 값이 없다는 전제로 수행하게 됩니다. 만약 마이너스 값이 존재한다면 테이블의 없는 경로로 우회하는 경우 기존 값들에 영향을 주기 때문입니다. 어떤 변도 음수 가중치를 갖지 않는 유향 그래프에서 주어진 출발점과 도착점 사이의 최단 경로 문제를 푸는 알고리즘이다. 알고리즘에 대한 자세한 설명..
-
[알고리즘] 최대 공약수와 최소 공배수 구하기Programing/Tips 2016. 11. 18. 17:18
안녕하세요. 이번에는 최대 공약수와 최소 공배수 구하기에 대해 알아보려고 합니다. 여기서 최대 공약수란 ? 최대공약수(最大公約數, 문화어: 련속나눔셈; 영어: greatest common divisor, 약자 GCD)는 공약수 가운데 가장 큰 하나다. 다항식이나 환의 원소에 대해서도 정의할 수 있다.(위키피디아 발췌) 그럼 최소 공배수란 무엇일까요? 수론에서, 여러 개의 정수/다항식/환의 원소의 공배수(公倍數, 영어: common multiple)는 그들 모두의 배수가 되는 정수/다항식/환의 원소이다. 최소공배수(最小公倍數, 영어: least common multiple, 약자 LCM)는 음이 아닌 공배수 가운데 가장 작은 하나이다.(위키피디아 발췌) [최대 공약수] /* get_gcd.cpp */ in..
-
[python] python setting on QtCreatorPrograming/Python 2016. 10. 7. 09:46
안녕하세요. 꿈꾸는 개발자입니다. 다음은 Qt creator 에서 파이썬을 사용하기 위한 방법입니다. 기본적으로 c++ 프로젝트를 생성할순 있지만 파이썬의 경우 사용자 설정이 필요하네요. 1. Run QtCreator 2. Tools > Options > Environment > External tools 3. Add > Add category > Type 'python' 4. Add > Add tool > create a new tools [참고자료] http://stackoverflow.com/questions/24100602/developing-python-applications-in-qt-creator
-
[ROS] Asulada Ver. 1Engineer/Robotic 2016. 9. 29. 22:51
Asulada Ver. 1 Created date : 2016.09.29 Last updated : 2016.11.05 안녕하세요. 꿈꾸는 개발자 몽키준입니다. Maker Fair 2016 에 출품하게 될 Asulada Project 를 준비하면서 Asulada Ver.1 을 소개하려고 합니다. 1. 프로젝트 소개 및 행사 내용 네이버 카페 '오로카' 에서 2016년 3월부터 진행한 수요모임 중 하나인 일명 '아슬하다'란 프로젝트로 진행했습니다. 2016년 10월 15~16일 양일간 열리는 'Maker fair 2016' 에 참여했습니다. 네트워크가 불안정하고 많은 사람들이 오가는 열악(?)한 상황이라 준비한 모든 기능을 전시하지 못했지만 프로젝트의 최종 목표를 달성하는데 의의를 두었습니다. 아슬하다 프..
-
[tip] 우분투에서 무한 로그인 문제 해결Engineer/Linux 2016. 9. 23. 11:06
안녕하세요. 1. .Xauthurity 파일삭제 2. lightdm 을 gdm 으로 변경 3. /etc/environment 제 경우에는 PATH 를 재정의해서 사용하고 있었는데 이로 인해 문제가 발생한 것으로 생각됩니다. 'PATH=$PATH:/usr/....' 를 삭제 후 리부팅을 하니 정상 로그인이 되네요. http://askubuntu.com/questions/731272/gdm-lightdm-cant-login-but-startx-works