[TIL] 2022.11.24

rara_kim·2022년 11월 24일
0

TIL

목록 보기
17/25

오늘은

오늘은 항해에서 알고리즘 테스트가 있었다.
세 문제 중에서 두가지를 골라 풀면 되는 방식이었는데, 나는 1-2번 문제를 풀이했다.
그동안 여러 문제들을 풀며 나왔었던 유형들이라 문제는 어렵지 않았다.
다만, 마지막 3번 문제는 난이도가 이었는데, 2시간을 넘게 붙잡고 풀어봤지만 결국 풀지 못했다😂😂
자료구조와 알고리즘 공부를 제대로 시작해본 뒤 다시 도전해보고 싶다.
뭔가 감이 올듯 말듯 코드로 구현이 안되고 계속 원하는 결과가 나오지 않는다...

그리고 오늘 시험이 끝난 뒤 같은 조 분들과 코드 공유를 했는데, 와 별찍기 문제에서 지금까지 for문만 썼지 String 클래스의 repeat()함수를 쓸 생각은 한번도 못해봤는데 조원분의 코드에 감탄을 금치 못했다.

👀피라미드 식 별찍기

public class Main {
	public void solution(int star) {

		for (int i = 0; i < star ; i++) {
			System.out.println((" ").repeat(star - 1 - i) + ("*").repeat(i * 2 + 1));
		}
      
	}
} 

앞으로 쭉 이어질 언어스터디에 대비해 전에 정리해 둔 클래스, 상속, 다형성, 추상클래스 관련 글들을 보며 미리 예습하는 시간을 가졌다.
상속까지는 괜찮았는데 다형성은 개념이 조금 어려워서 다시 한번 찬찬히 공부해보려고 한다.

💡기억해두기

다형성(Polymorphism)이란 한 객체가 여러가지 타입을 가질 수 있는 것을 의미한다.
부모 클래스 타입의 참조변수로 자식 클래스 타입의 인스턴스를 참조할 수 있다.
다형성은 상속, 추상화와 더불어 객체 지향 프로그래밍을 구성하는 중요한 특징 중 하나이다.

instanceOf

자바에서는 instanceOf 연산자를 제공하여, 참조변수가 참조하고 있는 인스턴스의 실제 타입을 확인할 수 있다.



[Java] 항해99 알고리즘 테스트(1 ~ 3)
GitHub: 알고리즘 테스트 코드(1 ~ 2)

profile
느리더라도 꾸준하게

0개의 댓글