간만에 포스팅입니다. 처음 목표는 1일 1포스팅이었는데, 그것도 잠시 이리도 게을러지는군요. 얼른 Angular나 Spring도 포스팅해야하는데... 요새는 간단한 알고리즘 관련 포스팅만 진행하게 되네요.암튼 오늘은 merge sort입니다. Quick Sort와 더불어 n log n의 성능을 내는 대표적인 정렬 방법입니다. 이름에서 알 수 있듯이 병합을 하면서 정렬을 하는겁니다. 그럼 gif를 통해 한번 살펴보겠습니다. 출처 : wikipedia.org . 우선 하나의 list를 계속해서 2 묶음으로 쪼갭니다. . 그리해서 하나의 element만 가지게 되면 병합을 실행합니다. . 병합을 할 때, 2 묶음씩 하게 되는데 이 때 작은것부터 병합을 해서 정렬을 하게 됩니다. 이해가 되셨죠? 이렇게 병합하는..
이번 포스팅은 퀵소트입니다. 퀵소트는 이름에서는 그 특성을 따오기 힘드네요. 그저 빠른 정렬? 퀵소트라는 이름이 붙었을 정도면 그만큼 빠르겠죠? 그럼 퀵소트가 일단 어떻게 움직이는지 한번 볼까요? 출처 : wikipedia.org 이해가 되셨나요? 이걸 보고 이해하셨다면... 당신은 천재? 이해 못하신 경우에는 아래 설명을 보고 한번 다시 보시죠. 1. 우선 pivot(중심점)이라는 것을 하나 정합니다. 이 pivot 을 정하는게 퀵소트의 성능을 좌우하는 중요한 것이기는 하지만 이게 퀵소트의 핵심 내용은 아니기 때문에 넘어갑니다. 위의 애니메이션을 자세히 보시면 pivot 은 전체 중에 가운데(비슷한?) 값을 정합니다. 2. pivot 을 정했으면 전체를 두 부류로 나눕니다. 이 pivot 보다 작은지,..
두번째는 첫번째에 버금가게(?) 쉬운 삽입정렬입니다. 이름에 대해서 정확히 알아놓는 것이 해당 알고리즘을 이해하는 기초라고 할 수 있습니다. 삽입정렬? 말 그대로 삽입을 해가면서 하는 정렬입니다. 우선 실 데이터가 어떻게 정렬되는지 확인해볼까요? 출처: wikipedia.org 보시면 아시겠지만 loop를 돌면서 정렬이 필요한 데이터에 대해서 위치를 찾아 삽입을 합니다. 그렇기 때문에 정렬이름이 삽입 정렬입니다. 그러면 이것을 어떻게 구현할지 먼저 pseudo code를 보겠습니다.mark first element as sorted for each unsorted element 'extract' the element for i = lastSortedIndex to 0 if currentSortedElem..
알고리즘 관련 첫 포스팅이 되겠네요. 프로그래머에게 있어서 알고리즘은 참 중요한 부분이죠? 오늘은 알고리즘에 있어서 가장 기본이라고 할 수 있는 bulbble sort에 대해서 알아보겠습니다. 우선 그림을 통해서 한번 확인해보도록 하겠습니다. 출처: wikibooks.org 지금 위의 그림을 보시면 한번 loop 돌때마다 하나의 최대값이 올라오게 됩니다. 하나씩 거품이 올라오는 형상을 따서 bubble sort라는 이름이 붙여졌다고 하네요. 머릿속으로 그림이 어느정도 그려지시나요? 그러면 pseudo code를 한번 살펴보겠습니다. 코드를 보면서 이해를 한번 해보겠습니다. do swapped = false for i = 1 to indexOfLastUnsortedElement if leftElement ..
지난번까지해서 Routing 설정하는것을 해봤습니다. [routerLink]와 @RouteConfig를 이용해서 간단하게 Routing 설정을 할 수 있었습니다. 그럼 지난 포스팅에 이어 이번에는 Routing 할 Component를 하나 추가하고, 그 외 Routing 기능이 뭐가 있는지 알아보겠습니다. npm start. 먼저 지난번과 동일하게 RouteConfig 에 먼저 추가해주겠습니다.import { Component } from '@angular/core'; import { HeroService } from './hero.service'; import { HeroesComponent } from './heroes.component'; import {ROUTER_PROVIDERS, ROUTER_..
이번 포스팅에서는 Angular 2의 Routing에 대해서 알아보겠습니다. 이번에 rc 버전으로 들어오면서 기존 routing이 deprecated 될거라고 해서 포스팅하기 애매하긴 한데요. 변경되면 그 때 또 다시 포스팅을 하도록 하죠. 그럼 npm start와 함께 시작해보겠습니다. 기존에 만들어놨던 기능은 routing의 한 기능으로 뺍니다. 그렇게 하기 위해 app.component.ts를 heroes.component.ts로 rename 합니다. Coponent 명칭이 바뀌었으므로 파일 내부에 AppComponent도 HeroesComponent로 변경하고, selector도 기존의 my-app에서 my-heroes로 변경합니다. 그리고 html과 css 파일명과 경로도 수정해줍시다.impor..
1일 1포스팅이 목표였는데 어제는 회식으로 인해 포스팅하지 못했네요. 못한 포스팅은 주말동안 따라 잡아야겠어요. 오늘은 Angular에서 Service 만들기를 해보겠습니다. Service는 여러 Component에서 공통적으로 사용하는 것을 말합니다. Service는 어떻게 만들어지는지, 어떻게 사용되는지 알아보겠습니다. 오늘도 역시 npm start와 함께 시작합니다. 기본적으로 Service는 아래와 같은 형태를 가집니다.import { Injectable } from '@angular/core'; @Injectable() export class HeroService { } . 간단하게 mock-heroes에 있는 HEROES 변수를 리턴해줍니다. 이렇게 만든 서비스를 실제 사용해보겠습니다. 기본적..
- Total
- Today
- Yesterday
- insert sort
- routeParams
- 티지유모차
- mockmvc
- spring security
- 타보유모차
- 빠른 정렬
- angular 2
- 거품정렬
- 머지소트
- 어드보케이트
- styleUrls
- TypeScript
- Spring Boot
- test static import
- angular
- router-outlet
- 알고리즘
- CURL
- routing
- mybatis
- templateUrl
- rest login
- angular2
- routerLink
- controller test
- RouteConfig
- 기내반입유모차
- 유아동겸용
- Ajax
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |