하루 leetCode 문제 - 요소 배열을 제거 --27--

주제 설명 :

배열 nums 및 값 발을 감안할 때, 당신은 제거 후 배열의 새 길이를 모두 같은 값을 제거하는 요소를 배치해야 발하고 돌아갑니다.

배열을위한 여분의 공간을 사용하지 마십시오, 당신은 장소에 입력 배열을 수정하고 사용 O (1) 여분의 공간의 조건을 완료해야합니다.

예 1 :

주어 nums = [3,2,2,3], 발 = 3

기능 (2)의 새로운 길이를 반환해야하고, 제 1 두 요소 nums 2이다.

예 2 :

주어 nums = [0,1,2,2,3,0,4,2] = 2- 브로

새로운 기능은 길이 5 처음 다섯 nums 요소를 반환해야 0,1,3,0,4

이 다섯 개 가지 요소는 임의의 순서가 될 수 있습니다

당신은 새 길이의 길이의 뒷면을 넘어 배열 요소를 고려해야 할 필요가 없습니다.

int removeElement(int arr[],int len,int val)
{
	int count = 0;

	for (int i = 0; i < len; i++)
	{
		if (arr[i] != val)
		{
			arr[count++] = arr[i];
		}
	}
	
	return count;
}



int main()
{
	int arr[] = {0,1,2,2,3,0,4,2};
	int count = removeElement(arr, sizeof(arr)/sizeof(arr[0]), 3);
	printf("%d\n",count);
	for (int i = 0; i < count; i++)
	{
		printf("%d\t",arr[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}
게시 43 개 원래 기사 · 원 찬양 한 · 전망 2304

추천

출처blog.csdn.net/lpl312905509/article/details/103982882