{Programing}(131)
-
알고리즘 - 완전 탐색 응용
1.무식하게 전체 반복 : for 문과 if문을 이용해 전체를 다 훑어보는 방법. 2. 비트마스크 : 이진수의 각 비트를 배열의 요소로 생각해 0은 없는 것, 1은 있는 것으로 판단. 비트연산을 이용해 각 자리를 조작. OR연산을 이용해 켜고 싶은 비트를 켠다. AND와 NOT연산을 이용해 끄고 싶은 비트를 끈다. XOR 연산을 이용해 토글 하고싶은 비트를 토글한다. 최하위 비트부터 i개를 전부 켜기 위해서는 SHIFT와 - 연산을 이용. (mask = (1
2020.03.13 -
알고리즘 - 비트연산 응용
입력한 수가 2^n 꼴인지 확인하시오 비트연산자를 응용한다. 2^n 꼴의 수는 2진법으로 표현하면 비트에서 무조건 한자리만 1이고 나머지는 전부 0이다. 비트연산자는 이진수에 대해 비트단위로 적용되는 연산이다. NOT : 비트 반전. 0은 1로 1은 0으로 반전한다. OR : 두 이진비트중 하나라도 1이면 1. 둘다 0 이면 0 AND : 두 이진비트 둘다 1이여야 1. 하나라도 0이면 0 XOR : 두 이진비트가 서로 달라야 1. 같으면 0 SHIFT : 입력한 자리수만큼 전체 비트를 좌 or 우로 민다. 단항연산자 - : 부호 반전. 이진수에 NOT 연산을 한뒤 1을 더하는 연산. 2^n 꼴을 판단하기 위해서는 자기 자신의 부호반전 값과 AND 연산을 한 경우를 따진다. ex) 34 의 2진법 표현 ..
2020.03.13 -
HTML - 레이아웃
홈페이지 로고 메뉴 게시판 글1 글2 광고 주인장 정보 : 웹페이지나 태그의 소개나 제목을 담기위해 사용하는 태그. : 내비게이션 역할. 메뉴를 만들기 위해 자주 사용. : 기준에 따라 구역 구분. 기준에 맞는 태그를 담음. : 주 내용을 담는 태그. : 페이지 측면을 꾸미는 태그. : 페이지 최 하단을 꾸미는 태그. 홈페이지의 정보나 업체, 바로가기등의 정보를 담음.......
2020.03.11 -
HTML - 기본 구조
HTML은 태그로 시작해서 태그로 끝나야한다. 열리는 태그 + 닫히는 태그 태그에는 속성이 붙을수 있다. 태그별 속성은 천차만별이니 공식문서를 확인하며 찾아쓰자. 요기서 www.w3schools.com/tags/default.asp HTML Reference w3schools.com --> THE WORLD'S LARGEST WEB DEVELOPER SITE www.w3schools.com 페이지 제목 본문 홈으로 DTD(Doctype) : 문서의 형식을 지정한다. 원하는 HTML버전마다 작성내용이 다르나, 현재는 HTML5의 내용인 html이면 끝. : HTML 문서의 정보를 담는 태그. 코드상 딱 하나만 존재. 태그 바로 밑에 존재. metadata를 담는 구역. 이 웹페이지의 데이터를 설명or 구성..
2020.03.11 -
HTML
Web : Internet을 이용하는 한 방법 client - server 의 구조를 가지고 운용됨. 각 말단은 HW-OS-SW 의 구조를 가지며 SW는 client 라면 Web browser,Web Application 이고, server 라면 Web server 가 된다. 이때 통신하며 데이터를 넘겨주기 위한 형식이 HTML이다. Hyper Text Markup Language 하이퍼 텍스트 : 하이퍼 링크를 이용해 독자가 원하는 순서에 따라 기존 문서에서 다른 문서로 접근할 수 있는 텍스트. 책과 같은 장별로 진행하는 것이 아닌 '하이퍼 링크' 라는 이정표를 이용해 원하는 페이지로 바로 이동하는 방식. 마크업 언어 : 태그를 이용해 문서나 데이터의 구조를 명시하는 언어. HTML : 태그를 이용해 ..
2020.03.11 -
알고리즘 - 퀵 정렬(Quick Sort)
단순 비교를 이용한 정렬을 수행. 분할 정복 알고리즘의 일종으로 엄청 빠름. 이후 나올 합병정렬(Merge Sort)와는 다르게 '비균등'하게 분할한다. 1. 기준점,피벗(Pivot)을 고른다. 2. 피벗을 기준으로 작은건 왼쪽, 큰건 오른쪽으로 전부 옮긴다. 3. 피벗을 제외하고 분할된 왼쪽 리스트, 오른쪽 리스트에 대해 각각 1~2를 반복. 4. 리스트가 더 안쪼개질때까지 반복(리스트 크기가 0이나 1이 될 때) 5. 끝내면 완성! 기본 연산. 분할 : 피벗을 기준으로 입력 배열(리스트)를 2개로 나눔. 정복 : 분할된 배열을 정렬. 배열이 크면 순환호출을 이용해 다시 분할. 결합 : 정렬이 끝난 부분 배열을 하나의 배열로 합친다. 장점 : 속도가 빠름. 정렬 알고리즘 중 최고속. 추가 메모리 공간이..
2020.03.11