SMALL

Study 441

[알고리즘] 벨만-포드 알고리즘 Bellman-Ford Algorithm 개념 잡기

벨만-포드 알고리즘은 Richard E. Bellman(리처드 E 벨먼)과 Lestor Ford Junior(래스터 포드 주니어)의 이름에서 따온 알고리즘이다. 벨먼은 알고리즘의 중요 분야인 동적 계획법을 고안한 사람이기도 하다. 이 알고리즘은 그래프의 최단 경로 문제를 해결하기 위한 알고리즘이다. 모든 간선에 대해 가중치를 계산, 갱신해가며 가중치가 변경되지 않을 때까지 처리를 반복한다. 이 알고리즘을 해석해보자. 위 그래프는 똑같이 벨만 포드 알고리즘의 모습이다. 이 것을 파헤쳐보고자 한다. 먼저 초기 비용 값이 각 포인트에 할당된다. 모서리 중 하나가 선택된다. 편의를 위해 A-B 모서리를 선택했다. 끝점에서 끝점까지의 각 순회 비용이 발생하고, 선택한 모서리에서 계산된다. 계산은 초기 포인트의 비..

[개발 유용 사이트] 개발자가 알고나면 꿀팁인 사이트

1. jQuery API : jQuery 함수 참고 및 최신 버전 다운로드 등. 2. KoXo 자바스크립트 매뉴얼 3. HTML Tutorial : html 태그 설명 및 샘플. 4. css reference: css 참고 5. css layout generator: css 적용 테스트 페이지. 6. tinymce 웹에디터: 무료 웹에디터 component. 7. 웹 UI 컨포넌트: 유료 웹 UI component 각종 유용도구 https://wepplication.github.io/tools/ 온라인도구 온라인 도구 모음 회원가입이 필요없는 온라인 도구 모음 wepplication.github.io https://www.convertstring.com/ko/ 각종도구(암호, 복호, 핑테스트, 인코딩/디..

Study/개발 Tip 2021.03.14

[Spring] Spring + Jquery + Html 다중 파일 업로드

원래는 Daum Editor 와 연동해 게시판 내 사진 프리뷰, 업로드 전체가 구현되어있지만 본 포스트는 프리뷰된 다중 파일이 어떻게 다시 form으로 재조합되고 결과를 받는지에 중점을 두었다. 이미지를 서버에 올리지 않고 미리보기하는 방법은 아래 포스트에 적혀있다. [html 파일 올리기 전에 preview 하기] 위의 포스트를 보지 않아도 무방하다. 위의 리소스를 수정하여 포스트할 것이기 때문이다. [Client-Side] - 이미지첨부를 클릭했을 때, 당장 이미지가 올라가지 않고 먼저 미리보기 된다. - 미리보기는 개별적으로 삭제가 가능하다. - 삭제된 이미지는 실제로 서버에 업로드되지 않고, 최종적으로 미리보기중인 파일만 업로드한다. 초기 화면은 이렇다. 이미지를 thumbnail처럼 보이기 위해..

Study/Spring 2021.03.14

[IT 용어] 존나게 많은 IT용어 중의 일부분

SVN + CVS : 소스파일이나 프로젝트를 관리해주는 서버와 클라이언트로 구성된 통합 프로그램이라고 할 수 있다. 소스를 저장하고 소스가 변경되는 시점들을 기억하여 프로젝트를 관리하는데 있어 중요한 역할을 하게 된다. SVN(Sub version System) : 형상관리/소스관리 툴 사용목적 : 여러명이서 작업하는 프로젝트의 경우 버전관리나 각자 만든 소스의 통합과 같은 문제를 해결하기 위해 저장소를 만들어 그곳에 소스를 저장해 소스 중복이나 여러 문제를 해결하기 위한 Software이다. Repository : 프로젝트 파일 및 변경 정보가 저장되는 장소 import : 빈 Repository에 맨 처음 파일을 채우는 것 Export : 버전 관리 파일들을 뺀 순수파일만 빼내는 것 Checkout ..

Study/IT 이야기 2021.03.14

[AWS] 아마존 웹 서비스 간편하게 알아보기

AWS의 기본 알기 클라우드 컴퓨팅과 AWS Cloud Computing, 그리고 AWS AWS의 특징 AWS의 주요 서비스 AWS 물리 인프라(Region, AZ, Edge) AWS 과금 방식 이해하기 AWS 과금 요소 AWS 과금 원칙 따라하기 - AWS 서비스 시작하기 AWS 계정 생성 AWS Management Console 로그인 목표 아키텍처 소개 목표 아키텍처 네트워크 구성 리소스를 제어할 수 있는 권한을 관리합니다 - IAM IAM은 어떤 서비스인가? AWS API, 그리고 IAM AWS API를 사용하는 방법 IAM에서 사용하는 객체들 루트 계정과 IAM 객체 IAM User, Group, Role IAM Policy 따라하기 - 계정 보안 향상을 위한 설정 Cloudtrail 설정 보안..

Study/Cloud 2021.03.13

[AWS] AWS 과금 방식 이해하기

AWS 과금 방식 이해하기 AWS는 각 서비스 별로 다른 매우 복잡한 과금 요소를 지니고 있다. 비용을 예측하기 위해서는 각 서비스의 기능을 먼저 이해해야 한다고 말할 수 있을 만큼, AWS의 비용 구조는 서비스별로 계층이 많고 복잡하다. AWS의 비용은 기본적으로 다음의 원칙에 맞춰 과금된다. - 비용 결제는 한 달 단위로 매월 초에 이뤄지며, 비용은 전 달의 사용량에 따라 책정 - AWS의 각 서비스는 하나 또는 하나 이상의 과금 요소를 갖고 있으며, 서비스마다 과금되는 항목과 기준이 각기 다름 - 모든 단가는 Region별로 상이하며, 단가는 AWS 정책에 따라 주기적으로 변경되거나 인하될 수 있음. 2-1 AWS 과금 요소 AWS에서 제공하는 모든 서비스의 과금 요소는 100여개가 넘는다. 이 모..

Study/Cloud 2021.03.13

[알고리즘] 왜 숫자는 0부터 세어야 될까? 프로그래밍 언어의 비밀

대부분의 프로그래밍 언어에서 인덱슨느 보통 1이 아닌 0에서 시작하는 경우가 많다. 그 이유는 무엇일까? 네덜란드의 유명한 컴퓨터 과학자인 다익스트라(Dijkstra, 1930-2002)는 이에 대한 제안서를 작성했다. 이 내용을 요약하면 다음과 같다. 먼저 수학에서 수의 구간을 표현하는 방식에는 다음과 같은 4가지 방법이 있다. - 열린 구간 - 닫힌 구간 - 반열린 구간 - 반닫힌 구간 예를 들어 2에서 12까지의 정수를 표현하는 방식은 다음과 같다. ① 1 < n < 13 ② 2 ≤ n ≤ 12 ③ 1 < n ≤ 12 ④ 2 ≤ n ≤13 다익스트라는 이 4가지 방법중 시작은 닫힌 구간, 끝은 열린 구간으로 표현하는 것이 좋다고 얘기했다. 즉 ④번 방식을 말하고 있다. 그 이유는 첫째, 각 구간의 ..

[알고리즘] 알고리즘의 성능은 어떻게 표현할까? | 알고리즘 성능 정리

알고리즘의 성능은 시간 복잡도(Time complexity)와 공간 복잡도 (space complexity)로 표현한다. 시간 복잡도는 입력 값의 개수와 처리 시간과의 관계를 표현하고, 공간 복잡도는 입력 값의 개수와 메모리 증가량과의 관계를 표현한다. 시간 복잡도는 입력 값의 개수와 알고리즘의 처리 시간과의 상관관계를 표현한 말로 입력 데이터의 양이 많아짐에 따라 처리 속도가 어떻게 변화하는지를 수학의 기호를 빌려 표현하는 방식이다. 쉽게 생각해서 수학의 방정식을 떠올리면 된다. x축을 입력 값의 개수로 놓고 y축을 처리 시간으로 봤을 때, x가 증가함에 따라 y가 어떻게 변화하는지를 표현하는 것이다. x와 y가 일정한 비율로 증감한다면 선형(linear) 시간 복잡도를 가진다고 표현하며, 지수나 로그..

[알고리즘] 알고리즘은 어떻게 학습할까? / 알고리즘 공부법

혼자서 공부를 하다가 알고리즘의 학습법에 대해 고민을 해보았다. 너무 어려워도 어려운 것이다. 제일 단순하고 쉬운 알고리즘이 입력된 문자열을 모두 나열한 다음 거기서 해당 문자열을 골라내라는 것이다. 그런데 처음 접하는 사람들이 이것을 어떻게 풀 수 있을까? 결론만 말하면 무한 연습 뿐이다 진짜 공부하는거 옛말이 별 거 없다. 그냥 오로지 이론 학습하고 연습하고 실전을 통해서 몸에 익히는 수밖에 없다. 아니 이럴거면 왜 글 썼냐고? 나에게 상기시키기 위해서... 당일엔 언제나 의기와 화이팅이 넘치나 하루가 지나고 이틀이 지나면 망각 해버리는 게... 매일 같이 글을 쓰면 좀 나아지려나 싶어서 작성해본다 허허... 모든 문제에는 사실 해결하는 방법이 있다. 예를 들면 수도권 지하철에서 영등포에서 출발해서 ..

반응형