피드로 돌아가기
Max Consecutive Ones
Dev.toDev.to
Backend

O(N²) Brute Force를 O(N) Running Count로 최적화한 연속성 분석 알고리즘

Max Consecutive Ones

Jaspreet singh2026년 6월 14일3beginner

Context

Binary Array 내 최장 연속 1의 길이를 찾는 과정에서 발생하는 중복 탐색 문제 분석. 모든 인덱스에서 전방 탐색을 수행하는 Brute Force 방식의 비효율적인 시간 복잡도 해결 필요.

Technical Solution

  • 단일 순회(Single Traversal)를 통한 데이터 접근 횟수 최소화
  • Current Streak 변수를 활용한 상태 유지로 중복 방문 제거
  • 0 발견 시 즉시 Count를 초기화하는 Reset 메커니즘 적용
  • 매 단계에서 Global Maximum을 갱신하여 추가 탐색 없이 결과 도출
  • 추가 자료구조 배제로 공간 효율성 극대화

최장 연속 구간 탐색 시 다음 사항을 검토하십시오:

1. 전체 데이터를 한 번만 읽는 단일 루프로 설계했는가,

2. 상태 초기화 조건(Break Condition)이 명확한가,

3. 불필요한 추가 메모리 할당 없이 변수만으로 상태 추적이 가능한가.

원문 읽기