83.在数组中删除给出的数

原创 2015年07月07日 18:26:01

假定整数数列中的数不重复,并存放在数组中,函数fun的功能是:删除数列中值为x的元素,n中存放的是数列中元素的个数。


#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#define N 30
int  fun(int *a, int n, int x)
{
	int p = 0, i;
	a[n] = x;
	while (x != a[p])
		p = p + 1;
	if (p == n)
		return -1;
	else
	{
		for (i = p;i < n;i++)
			a[i] = a[i + 1];
		return n - 1;
	}
}
int main()
{
	int w[N] = { -3,0,1,5,7,99,10,15,30,90 }, x, n, i;
	n = 10;
	printf("The original data :\n");
	for (i = 0;i < n;i++)
		printf("%5d", w[i]);
	printf("\nInput x(to delete):");
	scanf("%d", &x);
	printf("Delete  :%d\n", x);
	n = fun(w, n, x);
	if (n == -1)
		printf("***Not be found !****\n\n");
	else
	{
		printf("The data after delete:\n");
		for (i = 0;i < n;i++)
			printf("%5d", w[i]);
		printf("\n\n");
		
	}
	system("pause");
	return 0;
}


有序整型数组A,大小为n,请给出一个O(n)的算法,删除重复元素,O(1)空间

/*  *   给定排好序的整型数组A,大小为n,请给出一个O(n)的算法,删除重复元素,且不能使用额外空间。  *  *   提示:既然有重复,必有冗余空间。将元素放入数组的前面,并记录下次可...

给出一个数和一个有序数组,找出该数组中之和等于该数的两个数

今天写的一个版本: 1、有序数组,先写一个二分查找的方法 private static int[] erfen(int[] a,int left,int right,int num) { //...

给定一个n个整数的数组S,是否存在S中的4个数,使得a + b + c + d = target。 在数组中找出所有唯一的四元组,给出目标的总和。

本题源自LeetCode ------------------------------------------ 思路1 :回溯法 超时 代码; vector > fourSum(vecto...

给定只包含正数的数组,给出一个方法,将数组中的数拼接起来,得到的数,是最大的。

题目: 给定只包含正数的数组,给出一个方法,将数组中的数拼接起来,得到的数,是最大的。 如果a[5]={10,110,1110,1,1},则所的最大数为11111011010. 分析: 这个问题初看...

算法导论9.3-8-设X[1..n]和Y[1..n]为两个数组,每个都包含n个已排好序的数,给出一个求数组X和数组Y中所有2n个元素的中位数

#include #include #include #include using namespace boost::timer; using namespace std; int part...

拼多多笔试题一:给出一个无序整数数组,求任意三个数的最大乘积

题目: 给出一个可能包含正数、零、负数的无序整数序列,从该序列中任选三个数计算乘积,求最大的乘积是多少? 要求:算法的时间复杂度为O(n),空间复杂度为O(1). 输入: 第一行输入n表示序列中整数的...

数组A中,除了某一个数字x之外,其他数字都出现了三次,而x出现了一次。请给出最快的方法,找到x。

数组A中,除了某一个数字x之外,其他数字都出现了三次,而x出现了一次。请给出最快的方法,找到x。 类似的:数组A中,除了某一个数字x之外,其他数字都出现了三次,而x出现了两次。请给出最快的方法,找到x...

python 题目一,给出一张数组map,输入起点和终点,找一通路

问题: 存在一张0,1数组的map,0:无障碍,1:障碍。 用户输入一个起点,和一个终点,寻找一条通路。 分析: 采用广度查找法。 第一次查找:蓝色表示, 第二次查找:红色表示, 按照这个方法来进...

如何在有序数组中给出指定数字出现的次数

问题描述:如何在有序数组中给出指定数字出现的次数,例如:数组{1,2,2,2,3,4,5} 数字2的出现次数为3。 最简单的方法是遍历数组,代码如下: #include //如何在有序数组中给出...

Distinct Substrings 给出一个字符串,问它的不重复子串有多少个 后缀数组

694. Distinct SubstringsProblem code: DISUBSTR Given a string, we need to find the total number of i...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:83.在数组中删除给出的数
举报原因:
原因补充:

(最多只允许输入30个字)