1. 시간복잡도(time complexity)란? - 알고리즘의 자원(resource) 사용량을 분석 - 자원이란 실행 시간, 메모리, 저장장치, 통신 등 1-1 실행시간 - 실행시간은 실행환경에 따라 달라짐 ex) 하드웨어, 운영체제, 언어, 컴파일러 등 - 실행 시간을 측정하는 대신 연산의 실행 횟수를 카운트 (같은 조건에서 연산의 실행 횟수를 본다는 의미) - 연산의 실행 횟수는 입력 데이터의 크기에 관한 함수로 표현 (ex O(n)) - 데이터의 크기가 같더라도 실제 데이터에 따라서 달라짐 - worst-case analysis 최악의 경우 시간 복잡도, average-case analysis 평균 시간복잡도 1-2 점근적(Asymptotic) 분석 - 점근적 표기법을 사용 : 데이터의 개수가 n..
문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 입력 첫 째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다. 출력 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다. 예제 입력 1 3 29 38 12 57 74 40 85 61 예제 출력 1 85 8 - 내 풀이 import java.util.Scanner; public class Main { public static void main(..
문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s return abcde c - 내 처음 풀이 class Solution { public String solution(String s) { String answer = ""; int sHalf = s.length() / 2; String[] arr; arr = s.split(""); if (s.length()%2 == 0) { answer = arr[sHalf - 1] + arr[sHalf]; } else answer = arr[sHalf]; return answer; } } * 다시보기 - ..
- 20200512
- 20200427
- 20200424
- 20200423
- 20200503
- 20200319
- 20201204
- 20200425
- 20200317
- 20200624
- 20200429
- 20200403
- chapter7
- 20200421
- 20200406
- 20200330
- 20200413
- likelion
- 20200415
- 20200502
- 생활코딩리눅스
- 20200622
- 20200804
- 20200504
- 백준
- chapter8
- 20200428
- 20200420
- 20200417
- 20200510
- Total
- Today
- Yesterday