在数组中查询指定字符函数

在数组中查询指定字符函数

#include <iostream>

using namespace std;

bool find(int a[], int n, const int &sum, int &x, int &y)
{
    int i = 0, j = n-1, csum;
    while (i < j)
    {
        csum = a[i] + a[j];
        if (csum == sum)
        {
            x = a[i];
            y = a[j];
            return true;
        }
        else if (csum < sum)
            i++;
        else
            j--;
    }
    return false;
}

int main()
{
    int a[] = {1, 4, 7, 11, 15};
    int x, y;
    if (find(a, 5, 15, x, y))
        cout<<x<<" "<<y<<endl;
    return 0;
}

我们找到数组的第一个数字和最后一个数字。当两个数字的和大于输入的数字时,

把较大的数字往前移动;当两个数字的和小于数字时,把较小的数字往后移动;当

相等时,打完收工。这样扫描的顺序是从数组的两端向数组的中间扫描

时间: 2024-08-01 22:39:16

在数组中查询指定字符函数的相关文章

快捷键-sublime编辑器_如何从已打开文件中查询指定字符

问题描述 sublime编辑器_如何从已打开文件中查询指定字符 sublime编辑器_如何从已打开文件中查询指定字符? 如我在初始化文件中加入了session_start,避免以前开发过程中已经写过session_start()函数出现重复,需要删除.但挨个找显得特麻烦. 问:如何实现快速查找?如果只可以,请分享整套的查找技巧,当然,最好包括我在上面提到的问题. PS:已经百度了一下,暂未找到相关的内容,故来提问,请大虾小虾们帮帮忙!TKS

JAVA-String 中删除指定字符(11种方法)

JAVA老师给我们留了一个课后作业,要求我们通过搜索JDK用尽可能多的方法删除String类中的指定字符,我只想到了 11 种方法,如果有不足或者遗漏希望读者能够不吝赐教. 第一种方法 – 通过循环从前往后遍历,如果不是要删除的字符则加到处理后的字符串中,代码如下: public String deleteCharString0(String sourceString, char chElemData) { String deleteString = ""; for (int i =

C# DataTable中查询指定字段名称的数据

这篇文章主要介绍了C# DataTable中查询指定字段名称的数据,本文直接给出实例代码,简单易懂,需要的朋友可以参考下 1.查询后获取对应的数据集后,传递参数strcodeName,根据数据集中strcodeName的匹配对应字段,获取数据集中对应的目的字段 代码如下: private string GetStrName(DataTable dtable, string strcodeName) { string Name = strcodeName; DataRow[] dr = dtabl

js replace(a,b)之替换字符串中所有指定字符的方法_javascript技巧

如下所示: var str = 'abcadeacf'; var str1 = str.replace('a', 'o'); alert(str1); // 打印结果: obcadeacf var str2 = str.replace(/a/g, 'o'); alert(str2); //打印结果: obcodeocf, 注意: 此处replace的第一个参数为正则表达式,/g是全文匹配标识. 以上这篇js replace(a,b)之替换字符串中所有指定字符的方法就是小编分享给大家的全部内容了,

Java在数组中查找指定元素的方法

以下实例演示了如何使用 contains () 方法来查找数组中的指定元素: 例子1 import java.util.ArrayList; public class Main {    public static void main(String[] args)  {       ArrayList objArray = new ArrayList();       ArrayList objArray2 = new ArrayList();       objArray2.add(0,"co

php数组是否存在指定字符与数组长度检测实例

in_array() 函数在数组中搜索给定的值. 语法 in_array(value,array,type) */  代码如下 复制代码 $os_list=array("mac","nt","irix","linux");      //定义数组 if(in_array("irix",$os_list))         //检查数组中是否存在lrix {   echo "当前操作系统列表中存在l

三种java 去掉字符串中的重复字符函数

三种java 去掉字符串中的重复字符函数 */ public static void main(string[] args) {         system.out.println(removerepeatedchar("ddddccffgd"));     }     public static string removerepeatedchar(string s) {         if (s == null)             return s;         str

java中删除 数组中的指定元素

java的api中,并没有提供删除数组中元素的方法.虽然数组是一个对象,不过并没有提供add().remove()或查找元素的方法.这就是为什么类似ArrayList和HashSet受欢迎的原因.不过,我们要感谢Apache Commons Utils,我们可以使用这个库的ArrayUtils类来轻易的删除数组中的元素.不过有一点需要注意,数组是在大小是固定的,这意味这我们删除元素后,并不会减少数组的大小.所以,我们只能创建一个新的数组,然后使用System.arrayCopy()方法将剩下的元

C字符串中删除指定字符几种算法

题如下图所示   题目意思很明显了,我们的思路其实也挺简单的,换句话说,删掉一个然后重构数组,补上那个空,一个个字符推进一格就行了嘛,不用想得太复杂(简单的来说就是偷懒).  代码如下 复制代码 #include<stdio.h> #include<string.h> void delchar(char s[], char c); int main(void) {  char c;  char s[80];  printf("Input a string: ")