전체 글

전체 글

    React 배우기

    백엔드 개발자가 다음과 같이API를 남겼다고 가정 프론트엔드 부분 세팅 npm | build amazing things Build amazing things We're npm, Inc., the company behind Node package manager, the npm Registry, and npm CLI. We offer those to the community for free, but our day job is building and selling useful tools for developers like you. Take your JavaScript devel www.npmjs.com 코드를 깔끔하게 하고싶고, 여러사람과 함께 코딩을 한다면 아래 두가지를 추천함 .eslintrc - 컴퓨터가..

    [알고리즘 특강]

    수업목표 자료구조 및 알고리즘에 대한 개념 이해 파이썬 코딩을 통한 알고리즘 구현 교육내용 자료구조 기본 개념 수업 진행 교재 C로배우는 쉬운 자료구조 모두의 알고리즘 자료구조_분류 선형구조 순차리스트, 연결리스트, 스택, 큐, 데크 비선형 구조 트리, 그래프 컴퓨터의 추상화 자료 추상화 자판기 - 커피 한잔을 먹기 위해 굉장히 많은 일을 함. 실제로 자판기에서 커피를 뽑아먹는 사람을 내부에서 어떤 일이 벌어지는지 신경쓰지 않고, 그냥 동잔만 넣고 커피가 나오면 커피를 먹는다. => 이런게 자료의 추상화 C언어에서는 일일이 구현을 해야함 => 권장사항 : C언어 공부(장기적2-3년) WHY? C언어 잘하면 다른 언어는 금방 익힘 알고리즘 자료구조가 요리 재료면 알고리즘은 요리방법 공간복잡도 메모리를 얼마..

    [융복합 프로젝트] IOT / 빅데이터 / AI 기본 개념

    IOT(Internet Of Things) IOT의 유무선 통신기술 IOT의 센서 기술 IOT엣지 디바이스 아두이노(Uno, 나노, 미니, 릴리패드) 라즈베리파이 대표적인 IOT플랫폼 AWS 마이크로 소프트 애저 구글 클라우드 IBM MQTT특징 publish/subscribe 토픽 QoS(Quality of Service) 0: 메세지는 한번만 전달하며, 전달여부를 확인하지 않는다. 1: 메시지는 반드시 한번 이상 전달된다. 하지만 메시지의 핸드셰이킹 과정을 엄밀하게 추적하지 않기 때문에, 중복전송될 수 있다. 2: 메시지는 한번만 전달된다. 메시지의 핸드 셰이킹 과정을 추적한다. 높은 품질을 보장하지만 성능의 희생이 따른다. IOT프로젝트 소개 스마트 쇼핑 카트 카트에 패드와 카메라 장착 -> 구매한..

    [python] 프로그래머스 > 문자열 > 문자열 내 마음대로 정렬하기

    [문제] 1. 문제 설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1의 문자 u, e, a로 strings를 정렬합니다. 2. 제한 조건 strings는 길이 1 이상, 50이하인 배열입니다. strings의 원소는 소문자 알파벳으로 이루어져 있습니다. strings의 원소는 길이 1 이상, 100이하인 문자열입니다. 모든 strings의 원소의 길이는 n보다 큽니다. 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 3. 입출력 예 strings n return [sun, be..

    [python] 프로그래머스 > 문자열 > 문자열 내 p와 y의 개수

    [문제] 1. 문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 pPoooyY면 true를 return하고 Pyy라면 false를 return합니다. 2. 제한사항 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. 3. 입출력 예 s answer pPoooyY true Pyy false 4. 입출력 예 설명 입출력 예 #1 'p'의 개수 2개, 'y'의 개수 2개로 같으므로 true를..

    [python] 프로그래머스 > 문자열 > 문자열 다루기 기본

    [문제] 1. 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. 2. 제한 사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. 3. 입출력 예 s return a234 false 1234 true [나의풀이] def solution(s): if len(s) ==4 or len(s)==6: for i in range(len(s)): if not s[i].isdigit(): return False return True else: return False [다른사람의 풀이] def alpha_string46(s): return s.isdigit() ..

    비트마스크 & minimum spanning tree & 플로이드 워셜

    비트마스크 비트마스크 정수의 이진수 표현을 자료구조로 쓰는 기법 장점 수행시간이 빠르다 코드가 짧다 메모리 사용량이 적다 비트연산 spanning tree 그래프 내의 모든 정점을 포함하는 트리 그래프에 있는 n개의 정점을 정확히 n-1개의 간선으로 연결 minimum spanning tree spanning tree중에서 사용된 간선들의 가중치 합이 최소인 트리 간선에 가중치를 고려하여 최소 비용의 spanning tree를 선택하는 것 네트워크(가중치를 간선에 할당한 그래프)에 있는 모든 정점들을 가장 적은 수의 간선과 비용으로 연결 [구현방법] 1. Kruskal MST 알고리즘 [설명] 탐욕적방법을 이용하여 네트워크의 모든 정점을 최소비용으로 연결하는 최적 해답을 구하는 것 [과정] 그래프의 간선..

    [알고리즘] 다익스트라

    다익스트라 알고리즘이란? 다이나믹 프로그래밍을 활용한 대표적인 최단경로 탐색 알고리즘 다이나믹 알고리즘인 이유 : 최단거리는 여러 개의 최단 거리로 이루어져있기 때문 현재까지 알고 있던 최단 경로를 계속해서 갱신 인공위성 GPS소프트웨어 등에서 가장 많이 사용 특정한 하나의 정점에서 다른 모든 정점으로 가는 최단 경로를 알려줌 음의 간선은 포함할 수 없음 현실세계 -> 음의 간선 존재X => 현실세계에 사용하기 매우 적합 과정 1. 출발 노드 설정 2. 출발 노드를 기준으로 각 노드의 최소비용 저장 3. 방문하지 않은 노드 중에서 가장 비용이 적게드는 노드 선택 4. 해당 노드를 거쳐 특정한 노드로 가는 경우를 고려하여 최소비용 갱신 5. 3번과 4번 과정 반복