본문 바로가기
반응형

Python66

[코딩 인터뷰] LeetCode - 392. Is Subsequence 문자열 문제 정복 안녕하세요, 여러분! 🌟 이번 글에서는 'Is Subsequence'라는 문제를 통해 문자열 처리의 기초를 다지는 방법을 알아볼 거예요. 준비되셨나요? 그럼 시작해볼까요? 🏁 문제 설명 🧩 'Is Subsequence' 문제는 두 문자열 s와 t가 주어졌을 때, s가 t의 서브시퀀스인지 아닌지를 판별하는 문제예요. 서브시퀀스란 원본 문자열에서 일부 문자를 삭제해도 (삭제하지 않을 수도 있어요!) 나머지 문자들의 상대적인 순서를 유지하여 만들어낸 새로운 문자열을 의미해요. 예를 들어, "ace"는 "abcde"의 서브시퀀스지만, "aec"는 아니에요. 문제보기 알아야 할 개념 공부하기 📘 이 문제를 풀기 위해선 다음 개념들을 이해해야 해요: **서브시퀀스(Subsequence)와 서브스트링(Substrin.. 2024. 1. 2.
[알고리즘] 보이어-무어 다수결 알고리즘 - Boyer-Moore Majority Vote Algorithm 안녕하세요, 오늘은 프로그래밍과 알고리즘의 흥미진진한 세계에서 매우 중요한 주제인 '보이어-무어 다수결 알고리즘'을 살펴보려고 합니다. 🧐 이 알고리즘은 코딩 인터뷰에서 자주 마주치는 다양한 문제들, 특히 배열에서 가장 많이 등장하는 요소를 찾는 문제를 효율적으로 해결하는 데 큰 도움을 줍니다. 🎓 🧐 Boyer-Moore Majority Vote Algorithm 이란? 이 알고리즘은 1981년 Robert S. Boyer와 J Strother Moore가 개발했어요. 목적: 주어진 배열에서 과반수를 차지하는 요소를 효율적으로 찾는 것입니다. 특징: 배열을 한 번만 순회하면서 과반수 요소를 찾아낼 수 있어요. 🔍 작동 원리 변수 설정: '후보 요소(candidate)'와 '카운터(count)' 두 가지.. 2023. 12. 29.
[코딩 인터뷰] LeetCode - Array/Strings - 169. Majority Element 안녕하세요, 코딩 인터뷰를 준비하시는 여러분! 오늘 다뤄볼 문제는 "169. Majority Element"입니다. 이 문제는 배열에서 가장 많이 등장하는 요소, 즉 다수의 요소를 찾는 것으로, 코딩 인터뷰에서 자주 등장하는 유형 중 하나입니다. 🎓 이 문제를 해결하기 위해서는 배열 순회부터 해시 테이블, 보이어-무어 다수결 알고리즘, 분할 정복까지 다양한 프로그래밍 개념을 이해하고 적용할 필요가 있습니다. 🧠 이 글에서는 이러한 개념들을 실제 문제에 어떻게 적용하는지 알아보겠습니다. 🎯 문제 설명 "169. Majority Element" 문제는 주어진 크기의 배열 nums에서 다수의 요소(메이저리티 엘리먼트)를 찾아내는 것입니다. 메이저리티 엘리먼트는 배열 내에서 ⌊n / 2⌋번 이상 나타나는 요소를.. 2023. 12. 28.
[코딩 인터뷰] LeetCode - Array/String - 26. Remove Duplicates from Sorted Array 안녕하세요, 코딩 열정 가득한 여러분! 🚀 오늘은 LeetCode의 매력적인 문제 '26. Remove Duplicates from Sorted Array'를 함께 풀어볼 시간이에요. 🎉 이 문제는 정렬된 배열에서 중복을 제거하는 방법을 배울 수 있는 완벽한 기회랍니다. 배열을 다루는 기초부터 효율적인 알고리즘까지, 모두 이번 문제에서 만날 수 있어요. 🤖💡 준비되셨나요? 코드와 함께 문제를 해결해봅시다! 🎯 문제 설명 이 문제는 비감소 순서로 정렬된 정수 배열 nums에서 중복을 제거하는 것입니다. 😲 중요한 것은, 이 작업을 "제자리"에서 수행하고, 각 고유 요소가 한 번씩만 나타나야 한다는 거예요. 또한, 고유 요소의 수 k를 반환해야 합니다. 문제보기 알아야 할 개념 공부하기 📘 투 포인터 기법:.. 2023. 12. 27.
반응형