精华内容
下载资源
问答
  • 给定的数组中查找一个数Given an array and an element, we have to find the occurrences of the element in the array. 给定一个数组和一个元素,我们必须找到该元素在数组中的出现。 To find the occurrences...

    在给定的数组中查找一个数

    Given an array and an element, we have to find the occurrences of the element in the array.

    给定一个数组和一个元素,我们必须找到该元素在数组中的出现。

    To find the occurrences of a given element in an array, we can use two functions,

    为了找到数组中给定元素的出现 ,我们可以使用两个函数,

    1. array_keys()

      array_keys()

      It returns an array containing the specified keys (values).

      它返回一个包含指定键(值)的数组。

    2. count()

      计数()

      It returns the total number of elements of an array i.e. count of the elements.

      它返回数组中元素的总数,即元素数。

    Firstly, we will call array_keys() function with the input array (in which we have to count the occurrences of the specified element) and element, array_keys() will return an array containing the keys, then we will call the function count() and pass the result of the array_keys() which will finally return the total number of occurrences of that element.

    首先,我们将使用输入数组(必须计算指定元素的出现次数)和元素调用array_keys()函数, array_keys()将返回包含键的数组,然后调用函数count()并传递array_keys()的结果,该结果最终将返回该元素出现的总数。

    PHP code to find the occurrences of a given element

    PHP代码查找给定元素的出现

    <?php
    //an array of the string elements
    $array = array(
        "The", 
        "Quick", 
        "Brown", 
        "Fox", 
        "Jumps", 
        "Right", 
        "Over", 
        "The", 
        "Lazy", 
        "Dog"
        );
    
    //word/element to find the the array 
    $word= "The";
    //finding the occurances
    $wordCount=count(array_keys($array, $word));
    //printing the result
    echo "Word <b>" .$word ."</b> Appears " .$wordCount ." time(s) in array\n";
    
    //word/element to find the the array 
    $word= "Hello";
    //finding the occurances
    $wordCount=count(array_keys($array, $word));
    //printing the result
    echo "Word <b>" .$word ."</b> Appears " .$wordCount ." time(s) in array\n";
    ?>
    
    

    Output

    输出量

    Word The Appears 2 time(s) in array
    Word Hello Appears 0 time(s) in array
    
    

    Explanation:

    说明:

    Here, we have an array $array with the string elements and then assigning the element to $word to find its occurrences, as mentioned the above example, element "The" appears two times in the $array and element "Hello" doesn't appear.

    在这里,我们有一个带有字符串元素的数组$ array ,然后将该元素分配给$ word来查找它的出现,如上面的示例所述,元素“ The”在$ array中出现了两次,而元素“ Hello”没有出现。

    翻译自: https://www.includehelp.com/php/find-the-occurrences-of-a-given-element-in-an-array.aspx

    在给定的数组中查找一个数

    展开全文
  • 编写函数一个整型数组(不超过20个元素)中查找一个给定的整数,该整数main函数中输入,如果找到该main函数中输出其下标,找不到时则输出-1,要求下标值不用函数返回值返回,而用引用参数实现。...

    Description
    编写函数在一个整型数组(不超过20个元素)中查找一个给定的整数,该整数在main函数中输入,如果找到该数则在main函数中输出其下标,找不到时则输出-1,要求下标值不用函数返回值返回,而用引用参数实现。

    Input
    第一行的第一个整数表示数组元素个数n,后面n个整数为数组元素的值,数据之间用空格分开

    第二行的一个整数为要查找的数

    Output
    输出一个整数,找到为大于或等于0的下标,找不到为-1

    Sample Input
    5 12 8 34 25 9
    34
    Sample Output
    2
    HINT

    #include<iostream>
    using namespace std;
    int fin(const int b[],int k);
    int main()
    {
    	int n;
    	cin>>n;
    	int a[50];
    	for(int i=0;i<n;i++)
    	{
    		cin>>a[i];
    	}
    	fin(a,n);
    }
    int fin(const int b[],int k)
    {
    	int j,c,m=0;
    	cin>>j;
    	for(int i=0;i<k;i++)
    	{
    		if(b[i]==j)
    		{
    			c=i;
    			m=1;
    		}
    
    	}
    	if(m==1)
    	cout<<c<<endl;
    	else
    	cout<<-1<<endl;
    }
    
    
    
    展开全文
  • 在给定的数组中查找一个数Problem Statement: Given an unsorted array A of size N of non-negative integers, find a continuous sub-array which adds to the given number. 问题陈述:给定一个大小为N的非负...

    在给定的数组中查找一个数

    Problem Statement: Given an unsorted array A of size N of non-negative integers, find a continuous sub-array which adds to the given number.

    问题陈述:给定一个大小为N的非负整数的未排序数组A ,请找到一个连续的子数组,该子数组加到给定的number上

    Solution

    Algorithm:

    算法:

    1. A in the input array, n is the length of the array & s in the given sum.

      A中的输入数组中,n是在给定的总和的阵列&S的长度。

    2. Initialize vector b. (for storing indexes of subarray)

      初始化向量b 。 (用于存储子数组的索引)

    3. Initialize a variable cur_sum=0

      初始化变量cur_sum = 0

    4. for i=0:n-1

      对于i = 0:n-1

    5. 	set cur_sum=A[i]
      	for j=i+1:n-1
      		add A[j] to cur_sum
      		if(cur_sum==s)
      			i is the starting index of subarray found
      			j is the end index of subarray found
      			print elements between indexes i & j
                  (including i & j) & return to main
      		end if
      		if cur_sum become greater than s then break loop
      	end for
      end for
      
      
    6. If control comes out of the loop that means so such subarray exists, thus print "no subarray found".

      如果控制退出循环,这意味着该子数组存在,因此打印“未找到子数组”

    C ++实现查找具有给定总和的子数组 (C++ implementation to find subarray with given sum)

    #include <bits/stdc++.h>
    using namespace std;
    
    vector<int> find(vector<int> a,int n,int s){
    	vector<int> b; //output vector
    	int cur_sum=0;
    	for(int i=0;i<n;i++){
    		cur_sum=a[i];//cur_suming element
    		for(int j=i+1;j<n;j++){
    			//add next element contigeously 
    			cur_sum=cur_sum+a[j]; 
    			// if current sum  is eaqual to the sum value
    			if(cur_sum==s){ 
    				//insert array index of the cur_sum element in sub array
    				b.push_back(i); 
    				//insert array index of the last element in sub array
    				b.push_back(j); 
    				return b;
    			}
    			if(cur_sum>s)
    				break;
    		}
    	}
    	// if no such sub array exists
    	b.push_back(-1); 
    	return b;
    } 
    
    int main() {
    	//code
    	int s,n,no;
    	cout<<"enter array length & Sum respectively"<<endl;
    	scanf("%d%d",&n,&s);
    
    	vector<int> a; //input array
    
    	cout<<"enter array elements........"<<endl;
    	for(int j=0;j<n;j++){
    		scanf("%d",&no);
    		a.push_back(no); //inserting array elements
    	}
    
    	vector<int> b=find(a,n,s);
    	if(b[0]==-1)
    		printf("subarray not found");
    	else{
    		cout<<"Subarray is: ";
    		for(int i=b[0];i<=b[1];i++)
    			cout<<a[i]<<" ";
    		cout<<endl;
    	}	    
    	return 0;
    }
    
    
    

    Output

    输出量

    First run:
    enter array length & Sum respectively
    8
    20 
    enter array elements........ 
    4
    2
    10 
    3
    -3 
    10 
    5
    5
    Subarray is: 10 3 -3 10 
    
    
    Second run:
    enter array length & Sum respectively
    6
    15 
    enter array elements........ 
    5
    1
    -6 
    7
    7
    3
    subarray not found
    
    
    

    翻译自: https://www.includehelp.com/icp/finding-subarray-with-given-sum.aspx

    在给定的数组中查找一个数

    展开全文
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。 例如输入数组1、2、4、7...

    题目:输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。

    例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。

    分析:一个数指向数组的第一个数,另一个数指向数组的最后一个数,如果两数之和大于给定的数,那么第二个数指向前一个数,如果两数之和小于给定的数,那么第一个数指向后一个数,如果两数之和与给定数相等,那么两个数所指就是所求。

    #include<iostream>
    using namespace std;
    int main()
    {
    	int a[]={1,2,4,7,11,15};
    	int i=0,j=5;
    	int SUM=15;
    	while(i<j)
    	{
    		int sum=a[i]+a[j];
    		if(sum==SUM)
    		{
    			cout<<a[i]<<" "<<a[j]<<endl;
    			break;
    		}
    		else if(sum>SUM)
    			j--;
    		else
    			i++;
    	}
    	if(i==j)
    		cout<<"无此两个数"<<endl;
    	return 0;
    }


    展开全文
  • 程序员面试百题-10-排序数组中查找和为给定数字
  • 【题 目】输入一个已经按升序排列的数组,一个给定的数字,在数组中查找两个,使得它们的和等于给定的数字。要求时间复杂度为O(n),如果存在多对满足条件的数字对,只给出一对即可。例如:输入数组『1,2,4,7,...
  • 【题 目】输入一个已经按升序排列的数组,一个给定的数字,在数组中查找两个,使得它们的和等于给定的数字。要求时间复杂度为O(n),如果存在多对满足条件的数字对,只给出一对即可。例如:输入数组『1,2,4,7,...
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。 例如输入数组1、2、...
  • 在排序数组中查找和为给定值...题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要 求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。 例如输入数组1、2、4...
  • 【题 目】输入一个已经按升序排列的数组,一个给定的数字,在数组中查找两个,使得它们的和等于给定的数字。要求时间复杂度为O(n),如果存在多对满足条件的数字对,只给出一对即可。例如:输入数组『1,2,4,7,...
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。例如输入数组1、2、4、7、...
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。 例如输入数组1、2、4...
  • (2)要查找的数字小于数组中的数字,去除该数字右边数字,剩下数字里查找; (3)要查找的数字大于数组中的数字,去除该数字上边数字,剩下数字里查找。 3. 图例 ​ 4. C++实现 #include <...
  • 程序员面试题精选(10)-在排序数组中查找和为给定两个数字题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和...
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。 例如输入数组1、2、4...
  • 题目:输入一个已经按升序排序过数组和一个数字,在数组中查找两个,使得它们和正好是输入那个数字。要求时间复杂度是O(n)。如果有多对数字和等于输入数字,输出任意一对即可。例如输入数组1、2、4、7、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,337
精华内容 934
关键字:

在数组中查找一个给定的数