본문 바로가기
TIL

240828 TIL | 문자열 다루기 기본, 배열, 스택 등등

by 23g 2024. 8. 28.

0. TIL

잘한 점: 출근 전, 퇴근 후에 공부를 했다

개선점 : 일찍 자고 일찍 일어나자

배운 점: 잠을 못자면 공부 효율이 매우 떨어진다...^^

 

지금 이러고 있을 때가 아닌듯...

제 정신이 아닌 나예요

1. 데일리 루틴  

  cs 지식 공부

질문 : 배열, 연결 리스트, 스택, 큐의 특징과 iOS에서의 구현 방법을 설명해주세요.

 

답변
: 배열 (Array):

고정 크기, 인덱스로 빠른 접근.
Swift에서 Array 타입 사용.
사용 예시: var numbers: [Int] = [1, 2, 3, 4]

연결 리스트 (Linked List):

동적 크기, 삽입/삭제 빠름, 느린 접근.
Swift에서 직접 구현해야 함.
노드와 포인터 구조로 이루어짐.

스택 (Stack):

LIFO 구조, 상단에서 삽입/삭제.
Swift 배열로 구현 가능.
사용 예시: stack.append(10), stack.popLast()

큐 (Queue):

FIFO 구조, 앞에서 제거, 뒤에서 삽입.
Swift 배열로 구현 가능하지만, 성능을 위해 다른 방법도 고려 가능.
사용 예시: queue.append(20), queue.removeFirst()


  1일 1커밋

📜 문제 설명

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요.
예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

⌨️ 입출력 예

"a234" false


✏️ 나의 코드

func solution(_ s:String) -> Bool {
    
    if s.count == 4 || s.count == 6{
        if let num = Int(s){
            return true
        }
    }
    return false
}

📚 개선 코드

func solution(_ s: String) -> Bool {
    return (s.count == 4 || s.count == 6) && Int(s) != nil
}

 

-> 도대체 왜 틀렸다는건지,,,

정말 자증나고 열받고 쒸익대고 있었는데

그냥 문제를 잘못 읽은거 였음...4랑 6...

난 4만 했지 뭐야 6 추가하니 정답..~

이것이 바로 잠의 중요성 


  swift 강의

강의명 : 문자열이요

 

..흠

이렇게 쓸거면 쓰는 의미가 업나 ㅎ