구현 (5) 썸네일형 리스트형 [자료구조] Stack에 대해 알아보고 구현해보기 (Swift) Stack이란? Stack 자료구조는 후입선출(Last In First Out)LIFO 의 특성을 갖는 자료구조 입니다. 즉, 나중에 들어온 것이 가장 먼저 나가는 구조입니다. 예를 들어 1, 2, 3이란 원소가 Stack에 들어왔다면 스택에 요소들이 이러한 식으로 들어와져 있을 것입니다. pop을 하게 된다면? element 3이 삭제될 것입니다. 시간 복잡도 삽입 : $O(1)$ 삭제 : $O(1)$ 검색 : $O(n)$ 스택의 활용 실행 취소 (undo) 웹 브라우저에서의 뒤로가기 재귀함수 구현 스택을 어떻게 구현할 수 있을까요? 연결리스트를 사용하여 구현할 수도 있지만 Array를 사용해서 구현해보겠습니다. 삽입 연산은 Swift의 Array의 append 메서드를 사용할 수 있습니다. 단순히 A.. [BOJ] 백준 1330 두 수 비교하기 (Swift) 문제 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 풀이 비교 연산자 + 조건문을 사용할 줄 안다면 쉽게 풀 수 있음 3항 연산자로 풀이할 수도 있음 소스코드 후기 단순히 비교 연산자와 조건문을 사용할 줄 아느냐~ 를 묻는 문제인 것 같다! 3항 연산자를 사용해서 풀이를 해봤는데, 중첩된 3항 연산자를 사용하니 가독성이 떨어지는 것 같아서 개인적으로는 중첩된 삼항연산자는 지양하는게 좋겠다고 생각된다. (물론 중첩되지 않은 삼항연산자 사용은 좋아함!) [BOJ] 백준 25083 새싹 (Swift) 문제 https://www.acmicpc.net/problem/25083 25083번: 새싹 아래 예제와 같이 새싹을 출력하시오. www.acmicpc.net 풀이 10171(고양이), 10172(개) 문제와 비슷한 단순 출력 문제 역슬래쉬를(\) 출력하려면 print 문에 역슬래쉬(\)를 2번 작성해야함 큰따옴표(")를 출력하려면 print 문에 역슬래쉬(\) + 큰따옴표(")를 작성해야함 큰따옴표3개 (""")로 감싸주어서 여러줄을 출력할 수 도 있음 문자열 양 옆에 "#"을 써줘서 문자열의 이스케이프 문자를 인식하지 않고 출력할 수 있음 소스코드 후기 10171(고양이), 10172(개) 문제와 마찬가지로 다양한 풀이 방법으로 작성했음 """ 으로 다수의 줄을 가진 문자열로 작성 방법, #을 사용하.. [BOJ] 백준 10712 개 (Swift) 문제 https://www.acmicpc.net/problem/10172 [BOJ] 백준 2588 곱셈 (Swift) 문제 https://www.acmicpc.net/problem/2588 2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 풀이 (3) 을 구하려면, 첫번째 숫자와 두번째 숫자의 1의 자리의 곱임 (4) 을 구하려면, 첫번째 숫자와 두번째 숫자의 10의 자리의 곱임 (5) 을 구하려면, 첫번째 숫자와 두번째 숫자의 100의 자리의 곱임 (6) 은 첫번째 숫자와 두번째 숫자의 곱 385의 100의 자리 (3) 를 어떻게 구할까? 385 / 100 = 3 385의 10의 자리 (8) 를 어떻게 구할까? 385 % 100 == 85, 85 / 10 == 8 or 385 / 10 == 38, 38 % 10 == 8 385의 .. 이전 1 다음