분류 전체보기107 내배캠 11일차 TIL : 프로그래머스 문제 풀이 첫 경험 내일배움캠프 @ 하루 정리 프로그래머스 0단계부터 몇 문제를 풀어봤는데, 아직은 이것도 만만치가 않다. 나는 겨우겨우 한 문제 풀어봤는데, 다 풀고나서 다른 사람들의 풀이를 살펴보니, 엄청 간단하게 작성한 것이 있어서 황당하기도 했다. 그 이외에 여러 답변들을 보고, 동일한 문제를 푸는 해법이 또 다양할 수 있는 것을 보고 신기했다. 나는 while 반복문으로 사용했는데, 어떤 사람은 if문을 사용하고, 또 어떤 사람은 반복문이나 if문도 사용하질 않고 푼 경우도 있었다. 문제는 저작권이 있다고 링크로만. 1. 피자 나눠먹기(3) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/120816 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포.. 개발기초 2022. 11. 24. 내배캠 10일차 TIL : 자바스크립트 강의 수강 시작 @ 하루 정리 1) 어제 하루종일 알고리즘 문제 풀고 머리 싸매고 오전에도 알고리즘 특강 듣다가 오후부터 자바스크립트 강의를 보니 좀 휴식하는 느낌이다. 그래도 책으로 좀 자습을 했더니, Hello World 부터 변수, 클래스와 객체까지 보는데 큰 무리는 없다. 자바스크립트 책 자습 때는 클래스와 객체가 이해가 잘 안 갔는데, 이번 강의의 강사로 나오는 튜터님은 책에서 그냥 건너뛴 설명도 원리를 이해하게 설명해주셔서 정리되는 것도 좀 있다. 2) 시간표를 보니, 이 과정 마칠 때까지 하루하루 알고리즘 문제를 풀어야하는 것 같은데 답을 풀거나 이해가 안 되는데 다른 사람들 진도에 내가 맞춰야하는 압박도 생기고... 생각보다 나한테는 어려워서 쉬운 자바스크립트 강의로 좀 피하고 싶은 마음도 생기고 그렇다... 개발 학습일지(TIL) 2022. 11. 23. Javascript : For 반복문과 함수 1. for 반복문 문법. 예시와 함께 for 반복문의 기본형태와 실행 순서를 살펴보자 for (begin; condition; step) {조건을 만족할 때 실행할 코드} for (let temperature = 20; temperature 20도 정도면 적당한 온도입니다. 21도 정도면 적당한 온도입니다. 22도 정도면 적당한 온도입니다. 23도 정도면 적당한 온도입니다. 24도 정도면 적당한 온도입니다. for문은 실행되는 순서가 있다. (1) temperature라는 변수를 선언하고 값을 할당한다 (begin) (2) temperature가 25보다 작은지 연산한다. 결과값이 true라면 계속 실행한다. (condition) (3) 중괄호 안의 코드가 실행된다. (4) temperature에 1을.. 개발기초 2022. 11. 23. 내배캠 9일차 TIL : 알고리즘 문제풀이의 어려움 알고리즘 문제들을 처음푸는데, 난도가 상당하다. 진도가 잘 안 나가는듯. 1) 지난 기수에서는 후반부에 알고리즘 및 자료구조를 공부했다고 하는데, 회사에 입사하기 위하여 코딩테스트를 준비해야하보니, 전기수 선배들은 코딩테스트를 대비하기 위하여 수료하고도 시간을 들여 좀 더 공부를 해야 했다고 한다. 그런 이유로 이번 기수에서는 초반부터 자료구조 관련한 문제를 접하게 도와주나보다. 목표는 4개월 후 수료 전 까지 프로그래머스에 있는 문제들을 Lv2 까지 기본적으로 다 풀어보는 것으로. 대부분의 회사가 Lv2를 풀줄 알면 코딩테스트를 웬만하면 다 통과하기 때문이란다. 무튼 쉽지 않음. 하다보면 나중에는 익숙해지겠지. 2) 중간에 튜터님이 자습 중인 팀원들에게 다가 오셔서, 각자가 공부중에 어떤 어려움을 겪고.. 개발 학습일지(TIL) 2022. 11. 22. 알고리즘: 시간 복잡도와 공간복잡도 알고리즘을 계산하는 복잡도의 척도로는 시간 복잡도(속도)와 공간 복잡도(공간)가 있다. 현대에 들어서 대용량 시스템이 쉽게 구축됨에 따라서, 시간 복잡도 개념이 더 중요해졌다. 실무에서 개발자들이 시간 복잡도를 고려하는 것은 매우 중요한 이슈이다. 구성된 알고리즘에 따라 소프트웨어를 실행하는데 수 초가 차이 날 수 있으며, 단 몇 초의 차이만으로 사용자들이 어느 소프트웨어를 사용하는데 느끼는 만족도는 크게 달라질 수 있기 때문이다. 시간과 공간은 반비례적 경향이 있다. 그래서 공간을 희생해서라도 시간 복잡도를 낮추는 것이 많이 요구된다. 프로그램 성능을 크게 향상시켜 사용자를 만족시키는 편이 좋을 것이다. 시간 복잡도 프로그램의 성능을 분석하는 방법 중 하나이다. 시간 복잡도란, 작성된 알고리즘이 어떤 .. 개발기초 2022. 11. 22. 알고리즘 : 기본 예제, 빈도수 찾기 어느 한 문제를 해결하는 데 두 가지 방식이 있다. 보다 효과적인 알고리즘을 찾기 위해서 고려해야할 것은 무엇일까? 먼저, 다음 문제를 해결해보는 시간을 가져보고, 어느 방식이 효율적일지 고려해보는 시간을 갖는다. 본격적으로 문제를 풀어보기에 앞서, 어떤 알파벳이 가장 많이 포함되어있는지 반환해보는 문제를 풀어본다. 알파벳 빈도수 찾아보기. def find_alphabet_occurrence_array(string): alphabet_occurrence_array = [0] * 26 # 이 부분을 채워보세요! return "a" print(find_alphabet_occurrence_array("hello my name is sparta")) 해법 def find_alphabet_occurrence_ar.. 개발기초 2022. 11. 22. 알고리즘 : 파이썬 기본 예제, 리스트 안의 최댓값 찾아보기 다음의 코드를 기초로 최댓값을 찾아보는 알고리즘 작성해보기 input = [4, 7, 5, 3, 2, 8] def find_max_num(array): # 이 부분에 알고리즘을 채워보자! return ? result = find_max_num(input) print(result) 우리는 직관적으로 8이 리스트 안에서 가장 큰 값이라는 생각이 들지만, 컴퓨터가 직접 어떤 규칙에 따라 최댓값을 찾아 볼 수 있도록 명령어를 입력해줘야 한다. 한 번 직접 코드를 작성해보고 다음 해답을 살펴보자 기본적으로 비교할 변수를 설정해줬다. 첫 번째 방식 : 두 변수를 설정하고, 한 변수가 항상 값이 컸을 때만 반환하기 - 작성할 함수에는 for문을 활용하는데, num과 compar_num 두 개 변수 설정하였고, 변수 .. 개발기초 2022. 11. 22. 알고리즘: 알고리즘의 의미와 필요성(개발자 입문) 알고리즘이란? 특정 문제를 해결하기 위해, 입력된 자료를 바탕으로 원하는 출력을 유도하는 규칙의 집합이다. 알고리즘은 여러 단계의 유한 집합으로 구성되며, 각 단계는 하나 또는 그 이상의 연산을 필요로 한다. 즉, 어떤 문제가 있을 때, 그것을 해결하기 위한 여러 동작들의 모임이다. 하나의 문제를 해결하기 위해서 다양한 해법이 존재할 수 있다. 중요한 점은 다양한 해법 중에 어떤 것이 가장 효과적인 방법인지 고려해야한다. 보유하고 있는 자원(시간, 노력, 금전)의 투입에 따라 효과적으로 산출량을 만들어내는 방법은 달라질 수 있으며 투입과 그 산출의 가장 최적점을 찾는 어떤 방법이 있을 수 있다. 알고리즘을 공부할 필요성 개발자는 프로그램을 만드는 직업이며, 좋은 개발자가 되려면 좋은 프로그램을 구현할 줄.. 개발기초 2022. 11. 22. 내배캠 8일차 TIL : 파이썬 강의 수강 내일배움캠프 일차 TIL : 일일히 코드 쳐가면서, 이해 안 되는 내용 정리하면서 강의수강하려니 시간이 많이 걸리긴 했다. 9 to 9 하루종일 강의를 봤으니... 그래도 내일배움캠프 개강 하기 전에 2주정도 자바스크립트 책을 자습을 조금 한 것이 도움이 되었는지 아주 내용이 어렵진 않다. 한 가지 언어 제대로 하고 나면, 다른 언어 학습할 때 수월하다는 이야기가 뭔지 좀 느낌이 온다. 오늘 배운 python 내용도 기초적인 내용이었고. 다만 javascrtipt 또한 제대로 공부한 수준이 아니라서 계속 학습은 이어나가야 할듯. 한 번 프로젝트 해보고 나니, 기본을 공부할 때도 언어 학습에서 어느부분이 더 중요한지 느낌도 온다. 역시 앞부분 내용일 수록 중요도가 큰듯. - 리스트, 딕셔너리, 조건문, 반.. 개발 학습일지(TIL) 2022. 11. 21. 파이썬 기초문법 뽀개기 : map, lamda, filter !! 리스트 내의 원소 활용 @ map() 활용 map(함수, 리스트) 첫번째, map()식이 활용된 보통의 형태 - 리스트의 원소를 조작하기 people = [ {'name': 'bob', 'age': 20}, {'name': 'carry', 'age': 38}, {'name': 'john', 'age': 7}, {'name': 'smith', 'age': 17}, {'name': 'ben', 'age': 27}, {'name': 'bobby', 'age': 57}, {'name': 'red', 'age': 32}, {'name': 'queen', 'age': 25} ] def check_adult(person): if person['age'] > 20: return '성인' else: return '청소년' result = ma.. 개발기초 2022. 11. 21. 파이썬 기초문법 뽀개기 : 한 줄의 마법, 코드 줄여쓰기 if문 삼항연산자 사용시, 다음과 같이 활용이 가능하다. 예시1 people = [ {'name': 'bob', 'age': 20}, {'name': 'carry', 'age': 38}, {'name': 'john', 'age': 7}, {'name': 'smith', 'age': 17}, {'name': 'ben', 'age': 27}, {'name': 'bobby', 'age': 57}, {'name': 'red', 'age': 32}, {'name': 'queen', 'age': 25} ] def check_adult(person): if person['age'] > 20: return '성인' else: return '청소년' result = map(check_adult, people) print.. 개발기초 2022. 11. 21. 파이썬 기초문법 뽀개기 : 파일 불러오기 파일 불러오기 파일을 분리하여 프로그램을 작성했을 때 한 파일에서 또다른 파일로 작성한 코드를 불러올 수 있다. 1) main_func.py에는 복잡한 코드를 작성해놓고, main_test.py에서 프로그램을 실행할 경우. main_test.py에서 프로그램 실행 from main_func import * say_hi() say_hi_to('영수') 실행결과 ==> 안녕! 영수님 안녕하세요. main_func.py에만 작성했던 코드가 실행된다. from (불러올 파일의) import (불러올 대상) from (불러올 파일의) import * (전부를 불러올 때는 * 별표시를 기재한다. 95%빈도로 활용) 2) main_func 파일에서 say_hi_to 함수만 불러올 경우 from main_func im.. 개발기초 2022. 11. 21. 이전 1 ··· 4 5 6 7 8 9 다음