일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 튜플
- HashSet
- Dynamic Programming
- 완전 탐색
- Java
- HashMap
- 메뉴리뉴얼
- 어려웠던 문제
- dfs
- 점프와 순간이동
- 후위 표기법
- 완전탐색
- 알고리즘
- 규칙찾기
- 2017 카카오 코드
- 순열
- 최소공배수
- 문자열
- 보이어무어
- 프로그래머스
- Stack
- 동적계획법
- 조합
- fragment identifier
- 쿼드압축 후 개수세기
- python
- pandas
- 영문자 확인
- 반복문
- 에라토스테네스의 체
- Today
- Total
목록전체 글 (148)
csmoon1010의 SW 블로그

1. 백트래킹(Backtracking) : 해를 찾는 도중에 '막히면' 되돌아가서 다시 해를 찾아가는 기법 (1) 최적화(Optimization) 문제 (2) 결정(Decision) 문제 : 문제 조건을 만족하는 해의 존재 여부를 'Yes' or 'No'가 답하는 문제 (ex> 미로 찾기, n-Queen 문제, Map coloring, 부분 집합의 합 등) (3) 알고리즘 절차 ① 상태 공간 TREE의 DFS(깊이 우선 검색) ② 각 노드의 유망성 점검 - 해답을 포함했는가? ③ 노드가 유망하지 않다면, 부모 노드로 돌아가서 검색(pop) 2. 미로 찾기(결정 문제) (1) 문제 - 입구, 출구 주어진 미로에서 입구~출구까지 경로 찾기 - 이동 방향은 위, 아래, 오른쪽, 왼쪽 4방향 (2) 풀이 - 이..

[4. 모듈] 1. 모듈(Module) (1) 의미 : 모듈화를 통해 분리된 시스템의 각 기능들 **모듈화 : SW의 성능 향상, 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 모듈 단위로 분해하는 것 - 서브루틴 : 메인 루틴에 의해 필요할 때 마다 호출되는 루틴 **루틴 : 기능을 가진 명령들의 모임. 메인 루틴+서브 루틴 - 서브시스템(Subsystem) = 단위시스템 : 시스템을 구성하는 요소. 그 자체로도 하나의 시스템에 필요한 모든 요소를 갖춤 - 소프트웨어 내의 프로그램 - 작업단위 (2) 특징 - 단독 컴파일 가능 - 재사용성 - 기능적 독립성 : 각 모듈의 기능이 서로 독립됨 - 하나의 기능만 수행 : 응집도(Cohesion)은 강하게 - 다른 모듈과의 과도한 상호작용 배제 : 결..
[3. 객체지향(Objected-Oriented] 1. 객체지향의 개요 : 현실세계의 개체(Entity)를 하나의 객체(Object)로 만들어 SW개발 시 조립해서 작성할 수 있는 기법 (1) 배경 : 구조적 기법의 문제점 해결 - 구조적 기법 : 프로시저에 근간을 두고 하나의 커다란 작업을 여러개의 작은 작업으로 분할 → 모듈 : 각각의 소작업 수행 → 한 곳에 모아 하나의 프로그램으로 - 문제점 - 개발 공정에만 치우침(유지보수 고려X) - 개발 시작 후 추가적인 요구사항 대응 어렵 - 재사용의 어려움 → 인력, 시간 소모 (2) 특징 - 구조의 단계적, 계층적 표현 - 멀티미디어 데이터 및 병렬 처리 지원 (3) 장점 - 재사용 및 확장이 쉬움 - 고품질의 SW를 빠르게 개발 - 유지보수의 용이성 ..

[1. 소프트웨어 아키텍처] 1. 소프트웨어 아키텍처 - 소프트웨어의 골격이 되는 기본 구조 - 소프트웨어의 구성 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체 - 설계 원칙 : 소프트웨어 개발 시 적용되는 원칙과 지침(이해 관계자들의 의사소통 도구) - 요구사항 : 비기능적 요구사항(제약) 반영 + 기능적 요구사항 구현 - 모듈 : 애플리케이션의 분할 방법, 분할된 모듈에 할당할 기능, 모듈 간 인터페이스 결정 2. 소프트웨어 아키텍처 설계의 기본 원리 모듈화(Modularity) : 시스템의 기능들을 모듈 단위로 나누는 것 → SW 성능 향상, 시스템 수정 및 재사용, 유지관리의 용이성 (1) 모듈 : 전체 프로그램 기능 중 "특정 기능"을 처리할 수 있는 소스 코드 (2) 공통 모듈 : 자..
0. 문제유형 : 문자열 처리 1. 문제이해 programmers.co.kr/learn/courses/30/lessons/17683 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr (1) 주요 요구사항 : 네오가 기억한 멜로디와 '방금그곡' 서비스가 제공한 음악 제목, 재생 시작과 끝난 시각, 악보를 비교해 찾으려는 음악의 제목을 출력 ① 멜로디, 악보에 사용되는 음 : C, C#, D, D#, E, F, F#, G, G#, A, A#, B (12개) ② 네오가 기억한 멜로디 m : ex> "AB..

1. 태그 : 그 의미(semantic)에 맞춰서 사용해야 됨(링크, 이미지, 목록, 제목) - 이유 : 스크립트 리더기, 검색엔진의 제대로 된 기능을 위해서 - html tag list www.w3schools.com/TAGS/default.ASP HTML Reference w3schools.com THE WORLD'S LARGEST WEB DEVELOPER SITE www.w3schools.com - test : jsbin.com/?html,output - 하위 태그 바로 쓰는 법 : > 를 통해 표현 가능 2. HTML Layout 태그 : 레이아웃(HTML 화면을 구성하는 기본적인 모습)을 구성하는 태그 - div : pc에서는 header, footer, nav보다 주로 div를 씀 - head..
[1. 사용자 인터페이스] 1. 사용자 인터페이스(UI, User Interface)의 개요 : 사용자와 시스템 간의 상호작용이 원활하게 이뤄지도록 도와주는 장치, 소프트웨어 - 3가지 분야 (1) 물리적 제어 : 정보 제공과 전달 (2) 표현과 구성 : 콘텐츠의 상세적인 표현과 전체적인 구성 (3) 기능 : 사용자의 편리성과 간편함 2. 사용자 인터페이스(UI)의 특징 - 변경이 잦음 : 사용자 만족도 직결 - 편리성, 가독성, 시간 단축, 업무 이해도 향상 - 최소 노력으로 원하는 결과 - 수행 결과의 오류 줄임 - 구체적 방법 제시 - 정보 제공자와 공급자 간의 매개 역할 - 소프트웨어 아키텍처 숙지가 우선시 되어야 함 개발할 SW의 기본 틀, SW 개발 과정을 체계적으로 접근하기 위한 밑그림 아래..
0. 문제유형 : 적절한 자료구조 찾기 1. 문제이해 programmers.co.kr/learn/courses/30/lessons/17680 코딩테스트 연습 - [1차] 캐시 3 [Jeju, Pangyo, Seoul, NewYork, LA, Jeju, Pangyo, Seoul, NewYork, LA] 50 3 [Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul] 21 2 [Jeju, Pangyo, Seoul, NewYork, LA, SanFrancisco, Seoul, Rome, Paris, Jeju, NewYork, Rome] 60 5 [Jeju, Pangyo, S programmers.co.kr (1) 주요 요구사항 : LRU(Least R..