본문 바로가기

전체 글70

[Data Structure] 스택(Stack) 스택이란? ✅ 스택이란 - 삽입과 삭제가 한쪽 끝, top에서만 이루어지는 유한 순서 리스트 - 후입선출(LIFO) : 가장 최근에 들어온 data가 먼저 나간다. - 모든 연산에 대한 시간 복잡도는 O(1) 더보기 스택의 모든 시간 복잡도가 O(1)인 이유는? - 삽입을 하거나 삭제를 할 때는 맨 위에 있는 top의 data를 삽입하거나 삭제하기 때문에 시간복잡도는 늘 O(1)이다. ✅ 스택의 구조 - 스택 상단 : top - 스택 하단 : 불필요 - 삽입(push) / 삭제(pop) 스택을 적용한 문제풀이 ✅백준 10828. 스택 https://www.acmicpc.net/problem/10828 문제 정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령.. 2022. 7. 3.
[JAVA] 쉽게 배우는 자바 프로그래밍_8장 기본 패키지 보호되어 있는 글 입니다. 2022. 6. 13.
[JAVA] 쉽게 배우는 자바 프로그래밍_7장 인터페이스와 특수 클래스 본 포스팅은 쉽게 배우는 자바 프로그래밍 교재를 바탕으로 작성되었습니다. Chapter 07장 인터페이스와 특수 클래스 📍도전 과제 01. count() 추상 메서드를 가진 Countable 인터페이스를 Bird 클래스와 Tree 클래스로 각각 구현해 보자. 클래스 public interface Countable { void count(); } class Bird implements Countable { String name; public Bird(String name) { this.name = name; } @Override public void count() { System.out.println(name + "가 2마리 있다."); } void fly() {}; } class Tree implemen.. 2022. 6. 12.
[JAVA] 쉽게 배우는 자바 프로그래밍_6장 상속 본 포스팅은 쉽게 배우는 자바 프로그래밍 교재를 바탕으로 작성되었습니다. Chapter 06장 상속 📍도전 과제 01. 그림과 같은 멤버를 가진 상속 관계의 클래스 3개를 명시적인 생성자 없이 작성해보자. 클래스 public class Girl { String name; } class GoodGirl extends Girl{ void show() { System.out.println("그녀는 자바를 잘 안다."); }; } class BestGirl extends GoodGirl{ void show() { System.out.println("그녀는 자바를 무지하게 잘 안다."); }; } test 코드에서 g2.show(); 가 주석인 이유 : g2는 GoodGirl인 자식타입을 Girl인 부모타입의 객.. 2022. 6. 11.
[C++_제 11장] 포인터와 동적 메모리 관리 본 포스팅은 C++로 시작하는 객체지향 프로그래밍 책을 바탕으로 작성하였습니다. C++로 시작하는 객체지향 프로그래밍『C++로 시작하는 객체지향 프로그래밍』은 구문보다는 문제 해결에 중점을 두는 문제 구동 방식을 사용한 프로그래밍에 대해 가르치고 있다. 여러 가지 상황에서 문제를 야기한 개념을 사용함book.naver.comkey point⭐ 포인터의 기본 사항포인터(pointer) : 데이터 값이 저장된 변수의 메모리 주소를 저장한다. 포인터 변수(pointer variable) : 포인터의 값으로 메모리 주소를 저장하기 위해 선언된다. *(애스터리스크) : 1) 포인터로 선언할 때 2) 역참조 연산자(또는 간접 연산자 indirection operator) &(앰퍼샌드) : 주소 연산자(address.. 2022. 5. 11.
[C++_제 10장] 객체지향 개념 본 포스팅은 C++로 시작하는 객체지향 프로그래밍 책을 바탕으로 작성하였습니다. C++로 시작하는 객체지향 프로그래밍 『C++로 시작하는 객체지향 프로그래밍』은 구문보다는 문제 해결에 중점을 두는 문제 구동 방식을 사용한 프로그래밍에 대해 가르치고 있다. 여러 가지 상황에서 문제를 야기한 개념을 사용함 book.naver.com key point ⭐ String 클래스 - 문자열 작성 string s("Welcome to C++"); //문자열 생성자 string s; //빈 문자열(empty string) - 문자열 추가 (append) string s1("welcome"); s1.append(" to C and C++", 0, 5); s1.append(4, 'G'); cout 2022. 5. 7.