매일매일 일어나서 오늘의 할일을 생각하자우선순위를 정하고 하나씩 우선순위가 가장 높은 일 부터순서대로 진행하자.
public class QuickSort { public static void main(String args[]){ int array[] = {10, 87, 2, 42, 51, 12, 5, 29, 78, 50}; //quicSort(배열, 배열첫번째인자(0), 배열마지막인자(9)) Sort.quickSort(array, 0 ,array.length-1); //정렬된 배열 출력 for(int num : array){ System.out.print(num+" "); } } } public class Sort { // 퀵정렬 : 기준값(pivot)과 비교해 작은수는 왼쪽 큰수는 오른쪽으로 분할을 하고 분할 된 배열들을 재귀함수를 이용해서 똑같이 분할 정렬한다. public static void quickSor..
1. TCP - 연결성, 신뢰성을 보장한다. : 데이터를 전송하고 제대로 전송되었는지 서버로 부터 확인을 합니다. 때문에 속도가 느리지만 데이터의 신뢰성을 보장합니다. ex) e-mail 전송과 같이 데이터의 손실이 있어서는 안되는 작업에 사용. 2. UDP - 비연결성, 비신뢰성 : 데이터를 단순히 전송하기만 한다. 데이터가 제대로 도착했는지, 손실되었는지는 확인 하지 않는다. 때문에 속도가 빠르지만 데이터의 손실이 있을 수 있다. ex) 인터넷전화와 같이 실시간으로 전송이 되어야하는 즉 속도가 빨라야 하는 작업에 사용.(대신 품질은 떨어짐) 동영상 스트리밍 서비스의 품질이 떨어지는 것도 UDP 전송방식이기 때문. 잦은 버퍼링보다는 몇 프레임이 손실되더라 도 빠르게 볼 수 있어야함.
가장 기본적인 정렬 알고리즘인 버블, 삽입, 선택정렬은 모두 간단하게 구현이 가능하다. 하지만 데이터 수가 조금만 많아지면 매우 느려 지므로(시간복잡도 : n^2) 실제로 사용하기에는 모두 비효율적인 알고리즘이다.그나마 삽입정렬이 가장 우수하고, 버블정렬이 가장느리다고 할 수 있다. 삽입정렬은 최악의 경우 n^2 이지만 정렬 상태에 따라 최대 n까지 시간복잡도가 개선된다. 또한 시간복잡도 계산에 사용된 비교연산만 이외에 실제 교환연산을 포함하면 버블정렬의 교환연산이 가장많이 나타난다. 따라서 버블정렬이 가장 느리다고 할 수 있다.
1. 정적 웹 페이지: 사용자(클라이언트)가 URL을 입력하여 요청을 하면 해당 URL의 웹서버에서 이미 저장되어 있는 html 문서를 사용자(클라이언트)에 보내준다. -> 즉, 모든 사용자들은 같은 URL 입력시 같은 화면을 보게 된다.(웹서버에 있는 파일을 수정하지 않는 이상)ex) 보통 어떠한 회사 홈페이지에서 회사소개 페이지는 항상 같은 내용을 담은 정적 웹 페이지(html문서)이다. 2. 동적 웹 페이지 : 사용자(클라이언트)가 어떠한 요청을 하면 웹서버에서 요청 정보를 처리한 후 제작된 html문서를 사용자(클라이언트)에게 보내준다. -> 즉, 모든 사용자들은 요청에 따라 각각 다른 화면을 보게 된다.ex) 어떠한 홈페이지 접속시 매일 네이버에서 로그인 요청 시 로그인 결과화면은 회원마다 각각..