분류 전체보기 471

커스텀뷰 CustomView 기초

안드로이드 기본 API에서 제공하는 라이브러리의 뷰와는 완전히 다른 뷰를 만들때는 모든 뷰의 최상위 클래스인 View를 상속받아 작성해야 한다. 주의사항- 레이아웃 XML 파일에 등록하여 다른 뷰와 함께 화면을 구성할 경우 생성자를 하나만 정의하면 실행시 에러가 발생.- 레이아웃 XML에 등록해서 이용하려면 생성자 3개를 모두 정의해야 한다. public class MyView extends View {Context context;public MyView(Context context) {super(context);}public MyView(Context context, AttributeSet attrs) {super(context, attrs);}public MyView(Context context, A..

Dev/Android 2018.03.21

CS50 공부 - 알고리즘

링크주소 : http://www.edwith.org/cs50 버블정렬 (Bubble Sort) : 인접한 두 수를 비교해서 큰 수를 뒤로 보내는 정렬 방법이다.시간복잡도 O(n²)삽입정렬 (Insertion Sort) : 정렬되지 않은 숫자들을 하나씩 빼서 정렬되어 있는 숫자 사이의 올바른 위치에 삽입하는 정렬 방법이다. 삽입 정렬은 자료의 양이 적을 때 성능이 우수하며 자료 대부분이 이미 정렬이 되어있는 경우 효율적이다.선택정렬 (Selection Sort): 배열 안의 자료 중 가장 작은 수(혹은 가장 큰 수)를 찾아 첫 번째 위치(혹은 가장 마지막 위치)의 수와 교환해주는 방식의 정렬 방법이다.합병정렬 (Merge Sort) : 원소가 한 개가 될 때까지 계속해서 반으로 나누다가 다시 합쳐나가며 정..

Dev/Algorithm 2018.03.20

1D1A - One Day One Algorithm

문제 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환해주는 gcdlcm 함수를 완성해 보세요. 배열의 맨 앞에 최대공약수, 그 다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 gcdlcm(3,12) 가 입력되면, [3, 12]를 반환해주면 됩니다. 기본제공import java.util.Arrays; class TryHelloWorld { public int[] gcdlcm(int a, int b) { int[] answer = new int[2]; return answer; } // 아래는 테스트로 출력해 보기 위한 코드입니다. public static void main(String[] args) { TryHelloWorld c = new TryHelloWorld(..

Dev/Algorithm 2018.03.19

CS50 공부 - 알고리즘

의사코드는 프로그래밍언어보다 문법적 제약을 적게 받는 알고리즘 표현 방법이다. 선형탐색(순차탐색)은 원하는 원소가 발견될 때까지 처음부터 마지막 자료까지 차례대로 탐색한다.1. 정확하지만 아주 효율적이지 못한 방법이다.2. 자료가 정렬되어 있지 않거나 그 어떤 정보도 없어 하나씩 찾아야 하는 경우에 유용하다. 이진탐색은 정렬된 데이터를 좌우 둘로 나워서 원하는 값의 탐색 범위를 좁혀가며 찾는 방법이다.추가 포스팅1. CS50 알고리즘 - 버블정렬, 선택정렬, 삽입정렬(링크)

Dev/Algorithm 2018.03.19

프렌즈 그리고 직장, 직업

거의 1달전부터 넷플릭스에서 프렌즈(미국드마라)를 보고 있다. 주로 퇴근길 지하철에서 그리고 퇴근 후 혹은 주말에 아무것도 하기 싫을때 봐왔다. 그리고 거의 모든 시리즈의 종착점에 다가가고 있다.프렌즈는 여러가지 소재를 다루는 드라마인것 같다. 모든 시즌을 마무리할때가 되어가다보니 직장에 관한 내용들이 유독히 지금의 머리속에 남아있는것 같다. 1. 피비는 프리랜서 마사지사이고 약간의 이상주의자 인것 같이 나온다. 돈(?) 때문에 중간에 더 많은 돈을 벌 수 있는 대형 마사지에 잠깐 일하다가 레이첼과 해프닝이 발생하기도 했다. 2. 챈들러는 현재로 통계 분석가로 일했다가 카피라이터로 옮겼는데, 본인이 잘할 수 있는 일이란것과 하고싶은 일에 대한 딜레마를 다룬듯한 느낌이다. 지금도 과연 잘하는 수 있을 하고..

Log 2018.03.18

1D1A - One Day One Algorithm

문제 - 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬을 입력받는 sumMatrix 함수를 완성하여 행렬 덧셈의 결과를 반환해 주세요.예를 들어 2x2 행렬인 A = ((1, 2), (2, 3)), B = ((3, 4), (5, 6)) 가 주어지면, 같은 2x2 행렬인 ((4, 6), (7, 9))를 반환하면 됩니다.(어떠한 행렬에도 대응하는 함수를 완성해주세요.) 제출 답안class SumMatrix {int[][] sumMatrix(int[][] A, int[][] B) {int[][] answer = new int[A.length][A[0].length]; for (int i = 0; i < answer.length; ..

Dev/Algorithm 2018.03.14