주어진 리스트가 정렬이 되어있다는 가정하에서는 

이진 검색(binary search)를 사용하는게 매우 효율적인 방법이란다.


소스를 보니 재귀호출을 사용하여 검색이 진행된다.

(JAVA 프로그래밍 면접 이렇게 준비한다 - 73P)



public class BinarySearch {

public static boolean binarySearch(final List<Integer> numbers, Integer value) {

if(numbers==null || numbers.isEmpty()) // 전달받은 numbers 리스트가 null이거나 비워져있는지 확인

return false;

Integer comparsion = numbers.get(numbers.size() / 2); //  리스트 크기 반띵하여 원소 위치의 값을 추출

if(value.equals(comparsion)) {   

return true;

}

if(value<comparsion) {

return binarySearch(numbers.subList(0, numbers.size() / 2), value);

} else {

return binarySearch(numbers.subList(numbers.size() / 2 + 1, numbers.size()), value);

}

}

public static void main(String[] args) {

List<Integer> list = new ArrayList<>();

list.add(1);

list.add(4);

list.add(5);

list.add(9);

list.add(14); // 정렬하기 귀찮아서 삽입할때 순서대로 삽입시켰다.



System.out.println(binarySearch(list, 9)); // 삽입된 리스트와, 찾고하자는 밸류값을 파라메터로 던진다.

}

}


소스가 어렵지 않아 쉽게 이해할 수 있었다.






안녕하세요.


AWS EC2 인스턴스에 FTP를 이용하여 파일전송을 해보는 포스트를 작성해보겠습니다.






준비물 


1. FileZilla

FileZilla_3.29.0_win64-setup.exe


2. ppk파일




순서 

1. 파일질라 설치


2. FTP 서버 접속 및 파일 전송




1. 파일질라 설치 

- 첨부한 파일질라 클라이언트 설치파일을 받으시고 설치하세요.

- 파일질라 설치 과정은 생략하겠습니다.



설치 후 실행한 모습


2. FTP 서버 접속 및 파일 전송

- ec2 인스턴스 퍼블릭 ip를 알아야합니다. 

- pem키를 변환한 ppk 파일이 필요합니다.



파일 -> 사이트 관리자를 클릭하세요



호스트 : 퍼블릭 아이피

프로토콜 : SFTP

사용자 : ubuntu

키 파일 : ppk 파일


연결 버튼 클릭



(접속 화면)


- 끝 -





미세먼지 측정 어플 '공기어때'를 마켓에 정식 출시했습니다


현제 위치와 가까운 대기 측정소에서 보내오는 대기정보를 사용자에게 알려줍니다!


https://play.google.com/store/apps/details?id=com.sh.finddust






마켓에서 '공기어때'를 검색하세요!


간단하게 어플 소개를 해보겠습니다.



(로딩 화면)



(메인 화면)

현제 위치와 가까운 측정소에 보내오는 대기정보를 확인할 수 있습니다.


미세먼지, 초미세먼지 외 여러가지 대기정보를 한눈에 확인!

우측 상단의 종이비행기 버튼을 클릭하시면 카카오톡 친구에게

미세먼지 정보를 공유하실 수 있어요.




(카카오톡 공유 화면)



(위치 검색 화면)



(즐겨찾기 관리)

추가된 즐겨찾기를 삭제할 수 있습니다.

최대 3개의 즐겨찾기 지역을 추가하실 수 있어요





(공기 어때의 미세먼지 측정 기준)

'공기어때'는 WHO의 기준을 가지고 사용자에게 측정 정보를 제공합니다.




(개발자 정보와 데이터 출처)

공기어때는 2명의 개발자가 개발했습니다.

데이터는 환경부 한국환경공단에서 제공하는 데이터를 사용했습니다.



많은 이용과 관심 부탁드립니다.

읽어 주셔서 감사합니다.







오늘은 AWS로 만든 서버에 

MySQL 서버 구축과 외부 접속을 허용해보도록 하겠습니다.


[ AWS EC2 인스턴스 생성 방법은 http://luji.tistory.com/6를 참조하세요. ]





순서


1. MySQL 설치


2. 방화벽 설정


3. 외부접속 허용 설정


4. 접속 확인





1. MySQL 설치

- 터미널에 접속했다는 전재하에 진행합니다.

- 리눅스 명령어로 진행됩니다.


▶ sudo su

▶ apt-get update



▶ apt-get install mysql-server


[ Y 입력 ]


[ ROOT 계정 비밀번호 입력 ]


[ 비밀번호 재입력 ]

▶ mysql -u root p

▶ (비밀번호)

[ 설치완료 및 접속 화면 ]




2. 방화벽 설정

- 자신의 인스턴스에 적용된 보안그룹을 확인합니다.



[ 보안 그룹 이동 ]



[ 적용된 그룹 선택 후 편집 버튼 클릭 ]



사용자 지정 tcp 선택

3306 포트

위치 무관 선택 후 저장




3. 외부접속 허용 설정

- 터미널에 접속했다는 전재하에 진행합니다.

- 리눅스 명령어로 진행됩니다.


▶ sudo su

▶ cd /etc/mysql/mysql.conf.d

▶ vi mysqld.cnf


bind-address 값을 0.0.0.0 으로 수정


vi 에디터 수정 하는 방법

i 키 누르면 수정

ctrl + c 로 명령행

:wq로 저장후 vi 종료


▶ service mysql restart

▶ mysql -u root -p



grant all privileges on *.* to root@'%' identified by '루트계정 비밀번호'; 




4. 접속 확인

- mysql workbench 이용




- 끝 -










안녕하세요. 

아마존에서 제공하는 AWS를 이용한 개인 서버를 만들어 보도록 하겠습니다.



국내에는 네이버의 네이버클라우드 플랫폼이 작년에 공식으로 런칭되었죠.

구글도 구글 클라우드 플랫폼이란 서비스를 제공하고 있습니다.



하지만 많은 기업들이 아마존에서 서버를 운영하고 있는지 

구인구직 사이트를 보면 AWS 관련 기술을 요구하는곳이 많더라구요.



그래서! 

저는 AWS를 이용한 리눅스 서버 구축과 접속하는 방법을 포스팅 해보도록 하겠습니다.




순서


1. 회원가입 (생략)


2. ec2 인스턴스 생성 (서버 생성)


3. Putty 설치 및 pkk파일 만들기


4. 서버 접속




1. 회원가입 

- 계정 생성은 어렵지 않으니 이 파트는 생략하겠습니다.




2. ec2 인스턴스 생성 (서버 생성)



2.1 로그인하기

https://console.aws.amazon.com 접속해서 콘솔 로그인하기







2.2 리전 바꾸기 (지역)

- 우측 상단의 지역이름을 클릭하세요

- 아시아 태평양(서울)을 클릭하세요



2.3 EC2 서비스 생성하기

- 로그인하면 AWS 서비스 화면이 뜹니다.

- 컴퓨팅 메뉴의 EC2를 클릭해주세요


(1)

[ EC2 클릭 ]




(2)

[ 인스턴스 시작 클릭 ]







(3)

[ 저는 우분투 서버를 선택했습니다. 원하시는 OS가 있다면 해당 OS로 선택해주세요 ]






(4)

[ 기본 사양 선택 ]






(5)

[ 시작 클릭 ]






(6)

 ※ 중요한 키페어 생성 단계입니다.


서버 접속시 필요한 고유한 키입니다.

보관에 유의하세요.






(7)

[ 인스턴스 보기 클릭 ]






(8)

생성된 인스턴스(서버)를 확인하실 수 있습니다.

퍼블릭 IP와 퍼블릭DNS가 할당되었네요!






3. Putty 설치 및 pkk파일 만들기


3.2 PuTTY 설치

- 설치파일입니다. 다운로드 받으세요


putty.exe

puttygen.exe




3.2 PuTTYgen으로 pem파일 ppk파일 변환

- 푸티로 접속하기위해선 서버생성시 받은 키페어(펨키)를 푸티용으로 변환시켜야합니다.



(1)

[ Conversions -> import key 클릭 ]



(2)

[ 다운로드 받은 pem파일 선택 ]





(3)

[ Save private Key 클릭 ]





(4)

[ 예 클릭 ]





(5)

[ 저장할 위치 선택 ]





(6)

[ 만들어진 pkk파일 ]





4. 서버 접속

- 푸티를 이용한 서버 접속을 진행하겠습니다.

- 진행하기 앞서 앞에 만들었던 인스턴스의 퍼블릭 IP를 알으셔야합니다.

- AWS EC2 대시보드에 생성된 인스턴스의 퍼블릭 IP가 표기됩니다. 



(1)

[ Host Name 에 ubuntu@Public IP 를 입력해주세요 ]





(2)

[ Connection -> SSH -> Auth 이동 후

Private Key file for authentication 의 browse 버튼을 클릭 ]




(3)

[ 생성한 ppk파일 선택 ]




(4)

[ Open 클릭 ]






(5)

[ 예 클릭 ]





리눅스 터미널에 접속된 화면입니다.

이로써 AWS Ubuntu 서버 구축이 끝났습니다. 

^^

+ Recent posts