[Leetcode] 94, 144, 145. binary tree traversal

서론

Leetcode를 아시나요?

Leetcode는 여러 프로그래밍 언어로 자료구조를 공부할 수 있고,

코딩문제들을 풀어볼 수 있습니다.

Leetcode에서는 easy, medium, hard로 분류되는 총 804개의 코딩 문제가 있습니다.

804개에서 자신이 원하는 키워드를 검색해서 풀 수도 있으며,

자료구조에 대해 공부하고, 문제를 풀 수 있게도 해줍니다.

image.png

거기다가 visual studio code에서 leetcode 플러그인은 연동하여,

vs code에서 코드를 작성하고, 제출할 수 있습니다. 편합니다.

image.png

아래는 문제 풀이 후, 나중에 보기 위해 기록한 것입니다. 존댓말로 작성되어있지 않습니다.


문제

트리 탐색 문제는 모아서 한번에 풀었다.

풀이 과정

  • 재귀적으로 풀 것인가? (Recursive)
  • 반복적인 방법을 풀 것인가? (Iterative)
  • 재귀적인 방법은 공책에 그림을 그리면서 했다.
  • 솔루션을 찾아보니 Tree 구조를 변경하는 방식도 있었다.
  • 항상 햇갈렸는데 트리를 봤을 때 아래 코드를 생각하면 어떤 순서로 접근할지 그려진다.
    • preorder이면 list에 값 넣는 것을 제일 먼저
    • inorder이면 left와 right 사이에
    • postorder이면 맨 뒤에 넣으면 된다.

image.png

어려웠던 점

  • 재귀함수를 호출하지 않고, 구현을 하려고 하니 어려웠다.
  • 다른 사람이 어떻게 했는지 한 번 보고 작성하였다.
  • Stack을 활용하여 재귀함수를 호출하지 않고 구현 가능하였고, 나도 다시 구현을 해보았다.

Submission

  • NULL 체크하는 것을 깜빡했다.
    image.png

감사합니다.


This page is synchronized from the post: ‘[Leetcode] 94, 144, 145. binary tree traversal’

[Leetcode] 100.same-tree

문제

풀이 과정

같은 트리인지 어떻게 확인하지?

  1. 트리 구조가 같은지 체크한다.
  2. 두 개의 트리에서 특정 노드의 value가 같은지 체크한다.

탐색 순서는?

  1. preorder로 하자.
  2. 재귀적으로 가자.

Submission Fail

  • []\n[] –> NULL인 경우를 신경 안썼다. –> 런타임 에러 발생
  • [1]\n[] –> 마찬가지이다. –>런타임 에러 발생
  • [1,2,1]\n[1,1,2] –> 트리 구조만 같은지 체크했었다. –> 에러

image.png

일주일에 최소 2개 이상 꾸준히 풀어보고 싶어요!


This page is synchronized from the post: ‘[Leetcode] 100.same-tree’

[일기] 전문연 4주 훈련 #2

안녕하세요.

전문연구요원 4주 군사 훈련을 무사히 마치고 왔습니다.

전문연구요원이 많이 알려져 있지 않아

간단히 소개도 하고, 느낀점을 작성해보고자 합니다.

전문연구요원

병무청 홈페이지에 전문연구요원을 소개하는 페이지가 있습니다. 링크

추가적으로, 나무위키 - 전문연구요원의 설명이 잘 되어있습니다.
참고하세요. 링크

전문연구요원은 병역자원 일부를 군 필요인원 충원에 지장이 없는 범위내에서 국가산업의 육성·발전과 경쟁력 제고를 위하여 병무청장이 선정한 병역지정업체에서 연구 또는 제조·생산인력으로 활용하도록 지원하는 제도입니다.

저는 전문연구요원으로 군복무를 하게 되었습니다.
의경, 사회복무요원, 산업기능요원과 마찬가지로
전문연도 4주동안 훈련을 받고 각자 자신의 위치에서 제 역할을 합니다.


4주 훈련 후기

4주 훈련은 제가 못해본 새로운 경험이였습니다.
4주동안 몸은 힘들지만 머리가 아프지 않았습니다.

훈련을 받고 나서 현역으로 간 친구들이 달라보였습니다.
제 친구 중에 GP? 최전방을 간 친구가 있었는데
옛날에는 고생했구나였다면
지금은 고생했구나 근데 팔굽혀펴기, 윗몸일으키기, 달리기 다 특급이라고? 총 쏘는 것 까지 다 특급이야?
최전방 간 친구가 멋져보이더군요.

4주밖에 경험하지 못했지만
전화도 마음대로 못하고
게임도 못하고
핸드폰도 못하고
밥도 먹고싶은 것 못먹고
훈련소 밖에서 누리던 것을 못누렸습니다.
현역으로 간 친구들은 2년이나 그렇게 했을텐데..
훌륭하다. 나라를 위해 봉사했구나. 라고 생각합니다.

저 같은 경우
평소 규칙적으로 생활하지 않았는데
훈련소에서는
아침 6시에 일어나 저녁 10시에 일어나고
꼬박꼬박 세 끼 주고 일정에 따라 훈련받고 그러더군요.
할 수 있을까 생각했는데
이런 상황이 닥치니 하게되더군요.

훈련소에서 가장 힘들었던것

  1. 감기
  2. 걷기

아침마다 목이 아픈건 기본이고
거의 4주 내내 감기에 걸려있었습니다.
평소 감기에 잘 안걸린다고 생각했는데..
힘들었습니다.

두번째로 많이 걸어서 힘들었어요.
훈련을 받으러 이동을 하는게 힘들었어요.

의외였던 것

훈련소 밥은 맛있더군요.
고기도 많이나오고 좋았습니다.

몸을 쓰는 활동이 대부분이라서 그런것 같습니다.

평소에 초코파이나 레모나, 포카리 등을 많이 좋아하지 않았는데
가서 먹으니 되게 맛있었습니다.

짧은 4주 훈련이지만 인터넷편지가 오니 신나더군요.
나와서 편지를 써준 사람들에게 감사하다고 했습니다.

분대장, 소대장, 중대장들
모두 사람은 좋았습니다.
배려해주는 것을 느꼈습니다.

재미있었던 것

  • 같은 생활관 쓰는 친구들과 돌아가면서 재밌는 이야기 하는 것
  • 생수통 뚜껑으로 컬링
  • 책 읽기
  • 인터넷 편지 읽기
  • 종교 행사!!

4주 훈련 후기였습니다.
읽어주셔서 감사합니다.


This page is synchronized from the post: ‘[일기] 전문연 4주 훈련 #2’

[일기] 전문연 4주 훈련 #1

안녕하세요.

이 이야기를 여기 적어도될지..

제가 훈련을 갑니다!

https://steemit.com/kr-newbie/@teemocat/4wgayq-1
티모켓님의 글을 재밌게 읽었고 저도 제 감정에 대해 적어보고 싶었습니다.

다들 가는 훈련
저도 씩씩하게 잘 받고와야지 생각하고있습니다.

가기전에 전화하고싶은 사람들 전화번호도 적고
여러 사람들에게 조언도 듣고 감사했습니다.
발포비타민이 그렇게 필요한가 ? 평소에도 안마시는데
편지가 그렇게 받고싶다는데?
궁금합니다.

가서 일기도 많이쓰고
생각도 많이하고 오겠습니다.

스팀잇에서도 12월부터 시작하였고
글도 써보고 밋업도 참여해보고
유토피안! 글도 써보고
스팀의 매력에 푹 빠졌습니다.

특히, Kr-dev에서 많이 글을 썼네요.
이것저것 도전하고 새로하는걸 좋아하다보니
여러분야로 글을 작성했었습니다.
많은분들이 관심을 가져주셔서 너무 감사했습니다.

돌아와서는 시리즈로 연속되게 써보고 싶어요.
@asinayo님이 개발중인
sibba가 참 편하더군요. ㅋㅋㅋ
찾아보기 편해요.
전에 검색기능 만들어달라고 했었는데 넣어주시다니 ㅎㅎ
멋져요!

CpTjLMIUEAALWth.jpg

4주 후에 뵙겠습니다.


This page is synchronized from the post: ‘[일기] 전문연 4주 훈련 #1’

[steemit] 닉네임 챌린지 @jacobyu

안녕하세요. @jacobyu입니다.
@millionfist 님의 지명을 받아 닉네임 챌린지에 참가 하게 되었습니다. 지명해주셔서 감사합니다.

룰은 아래과 같습니다:
스티밋 닉네임을 어떻게 선정하였는지 포스팅하세요.
본명을 알려주세요.
닉네임을 바꿀 수 있다면, 무엇으로 바꾸고 싶으신지, 또 그 이유는 무엇인가요?

#steemitnamechallenge 태그를 달아주세요.
다섯 분을 지목해주세요.

스티밋 닉네임을 어떻게 선정하였는지 포스팅하세요.

제 영어이름이 jacobyu입니다.

“Crazy, Stupid, Love”라는 영화를 보고

제이콥이라는 이름을 정했습니다.

영화에서의 제이콥처럼 멋진… ㅋㅋ Cool guy가 되고 싶다는 생각이였습니다.

image.png

본명을 알려주세요.

Jacob yu입니다.

닉네임을 바꿀 수 있다면, 무엇으로 바꾸고 싶으신지, 또 그 이유는 무엇인가요?

바꾼다면.. @passionbull
이미 제 두번째 아이디인데요.
열정의 소라는 의미로 만들었습니다.
구글 이메일도 passionbull로 갖고싶네요.
이미 주인이 있습니다.

#steemitnamechallenge 태그를 달아주세요.

달았습니다

다섯 분을 지목해주세요.

@danbain 님
@nhj12311 님
@roychoi 님
@oprth 님
@kdj 님

잘 부탁드립니다^^


This page is synchronized from the post: ‘[steemit] 닉네임 챌린지 @jacobyu’

드론 (Drone) 조사, 무엇을 할 수 있을까?

드론으로 무엇을 할 수 있을까?

드론에 대해 알아봐야할 일이 생겨

찾아본 것 겸 글을 작성한다.

개발가능한 드론

최근? 단순히 리모트 컨트롤러로 조종만 할 수 있는 드론이 아니라

직접적으로 개발도하고 센서도 추가할 수 있는 형태로도 드론을 판매한다.

이름하여 Programmable drone이라 하여

DJI가 훌륭한 SDK를 제공하는 것 같아 정리를 해보고자한다.


PC에서 제어 가능하며, 다른 로봇과 연동한다던가

특정 이벤트, 센서값이 들어올 때 특정 동작을 하고 싶다던가

이런 경우 개발가능한 드론이 필요한 것 같다.

MATRICE 100 (DJI M100)

image.png

DJI_ROS는 DJI M100, M600, M210, or drones equipped with A3/N3 flight controllers에서 동작한다.

ROS를 지원한다는 것은 드론 자체 (onboard)를 PC에서 제어/데이터 수집이 가능하다라는 의미이다.

또한 ROS의 다른 패키지를 쉽게 적용할 수 있다.

예를 들어, 드론에 카메라가 달려있다면 그 카메라를 이용해서 ROS의 얼굴 인식 패키지를 그대로 적용 가능하다.


http://wiki.ros.org/dji_sdk 이 링크를 들어가면 ROS로 어떤걸 지원해주는지 자세히 알 수 있다.

필요한 입력이 무엇인지, 출력이 무엇인지를 쉽게, 명확하게 알 수 있다.

아래와 같이 정리를 해보았는데,

PC는 드론에게 joystick에 있는 joy값으로 직접적으로 컨트롤을 할 수 있다.

그리고, gimbal을 직접적으로 제어 가능하다.

드론은 PC에게 다양한 정보를 주는데

GPS 정보, imu 정보, 고도,

현재 속도, 3차원 위치

카메라 이미지 (전방, 아랫방향 스테레오 카메라, 메인 카메라 등)

배터리 상태, flight 상태, 짐벌의 각도

등을 받을 수 있다.


Subscribed topics

  • Flight Control Topics
  • Gimbal Control

Published topics

  • attitude (고도)
  • battery_state
  • flight_status
  • from_mobile_data (스마트폰에서 드론으로 들어가는 데이터)
  • gimbal_angle (gimbal의 각도)
  • gps_health (gps의 신호상태)
  • gps_position (gps 위치 데이터)
  • imu
  • rc (리모트컨트롤러의 6 channels)
  • velocity
  • height_above_takeoff (드론이 이륙할 때의 높이)
  • local_position (GPS를 이용한 드론의 3D 위치)
  • RTK position, velocity, yaw, etc..
  • stereo camera image
  • 카메라가 여러개 달려 있는데 각각 이미지들

살펴본 결과

단순히 컨트롤, 그리고 GPS를 활용한 절대 위치정도는 알 수 있는 것 같다.

그리고 카메라, IMU 정보 등은 쉽게 받을 수 있을 것 같다.

궁금증

  1. 호버링을 하기 위해서는 ROS로 어떻게 제어해야하는건가?
  2. 호버링 중에 (0,0,0) 에서 (3,0,3) 으로 이동해라를 해주는건 없나?
    ex - 현재 기준 위치에서 x축으로 3m, z축으로 3m 가라고 하면 알아서 가주는 것
    이왕이면 장애물도 알아서 피할 수 있도록 경로 계획하고 이동하는 것

더 조사해봐야겠다.

감사합니다.

  • DJI M100 - 좀 더 자세히
  • parrot ARDrone 3.0
  • intel drone ( 2018년 올림픽 퍼포먼스 오륜기)

This page is synchronized from the post: ‘드론 (Drone) 조사, 무엇을 할 수 있을까?’

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×