검 지 offer - 문자열 에서 처음으로 나타 난 문 자 를 찾 습 니 다. (해시 직접 주소 지정 법)
해시 표 (Hash table, 산 목록 이 라 고도 함) 는 키 코드 값 에 따라 직접 방문 하 는 데이터 구조 입 니 다.즉, 키 코드 값 을 표 의 한 위치 에 비 추어 기록 에 접근 함으로써 검색 속 도 를 빠르게 하 는 것 이다.
직접 주소 법 - 키 워드 를 가 져 오 는 선형 함 수 는 해시 주소 이 고 Hash (key) = key 또는 Hash (key) = A * key + B, A 와 B 는 두 상수 입 니 다.
검 지 offer 면접 문제: 문자열 에서 처음으로 나타 난 문 자 를 찾 습 니 다.
"test.cpp"
<strong><span style="font-size:18px;">#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
using namespace std;
#include <assert.h>
char FindFirstOneChar(char* str)
{
assert(str);
int tables[256] = {0};//Ascii 256
char* tmp = str;
while (*tmp != '\0')
{
// unsigned char
tables[(unsigned char)*tmp]++;
tmp++;
//
//tables[(unsigned char)*tmp++]++;
}
tmp = str;
while (*tmp != '\0')
{
// unsigned char
if (tables[(unsigned char)*tmp] == 1)
{
return *tmp;
}
else
{
tmp++;
}
}
}
//
void Test()
{
char* str = "hhddadeechrhg";
char ret = FindFirstOneChar(str);
cout<<ret<<endl;
}
int main()
{
Test();
system("pause");
return 0;
}</span></strong>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.