首页 > 其他分享 >溢信科技笔试

溢信科技笔试

时间:2023-10-27 22:48:08浏览次数:32  
标签:endIndex cArr 溢信 索引 int maxLen 笔试 科技 curLen

1.选择题

  本次笔试一共五道选择题,其中两道都是考的continue,因此在这里记录一下continue和break的区别

  在Java语法中,continue跳过本次循环,进行下一次循环;而break直接跳出循环

   在上图中,我们会发现if里面的语句走完的时候,就立马跳出循环,当i取余不等于0的时候才会有s的值相加,所以每次s相加取到的都是偶数值,当i加到7的时候退出了循环。

   从上图我们可以看出,当走到break这里的时候直接退出了循环,s输出为0。

2.编程题

  在本次笔试中的编程题中,一共有两道,第一道是在有序数组中使用二分查找找出目标值。第二道是找出字符串中重复字符最多的子串。

2.1 二分查找目标值

思路:使用一层while循环,将更新的中间索引对应的数组值与目标值比较,如果相等直接返回中间索引值;如果小于则更新右边位置为原中间索引前一个位置;如果大于则更新左边位置为原中间索引的后一个位置。

二分查找目标值
public int search(int[] nums, int target) {
        int left = 0, right = nums.length-1;
        while(left <= right){
            int mid = (right - left)/2 + left;
            if(nums[mid] == target){
                return mid;
            }else if(nums[mid] < target){
                left = mid + 1;
            }else{
                right = mid -1;
            }
        }
        return -1;
}

2.2 找出字符串中重复字符最多的子串

   从上图可以看出,最后截取的重复字符最多的子串是eeeee。

思路:一层for循环,索引从1开始,当后一个数组值跟前一个数组值相等只,当前长度自增;当不相等时,说明是其他字符,此时先判断当前字符长度与最大长度的值。然后更新最大长度以及当前长度还有末尾索引。最后根据最大长度索引和末尾索引返回截取的子串。

private static String findLongestString(String s){
        if(s == null || s.length() == 0){
            return "";
        }
        char[] cArr = s.toCharArray();
        int maxLen = 1;
        int curLen = 1;
        int endIndex = 0;
        for (int i = 1; i < cArr.length; i++){
            if(cArr[i] == cArr[i-1]){
                curLen++;
            }
            else {
                if (curLen > maxLen){
                    maxLen = curLen;
                    endIndex = i - 1;//更新尾元素
                }
                curLen = 1;//重置为1
            }
        }
        if (curLen > maxLen){
            maxLen = curLen;
            endIndex = cArr.length - 1;
        }
        return s.substring(endIndex - maxLen + 1, endIndex + 1);
    }
找出重复字符最多的子串

 

标签:endIndex,cArr,溢信,索引,int,maxLen,笔试,科技,curLen
From: https://www.cnblogs.com/kzf-99/p/17793251.html

相关文章

  • 台积电2纳米黑科技 - 晶背供电
    近期,台积电总裁魏哲家在一次法说会中透露了有关2纳米芯片的最新进展,并提到了“晶背供电”技术,这个领域的神秘黑科技正逐渐引起人们的兴趣。在最近的台积电法说会上,总裁魏哲家不仅提到了2纳米制程的进展,还透露,3纳米技术在高速计算和智能手机等应用领域引起了客户的浓厚兴趣,与2纳米在......
  • 推荐一款适合科技行业的CRM系统
      推荐您一款科技行业好用的CRM系统——Zoho CRM客户管理系统,旨在帮助企业管理客户数据、销售过程、营销活动以及服务支持,助力业务增长及数字化转型,实现“以客户为中心”的企业管理和运营模式。近些年,随着政府鼓励政策的出台、高技术人才培养,生物科技行业新产品研发经费的......
  • 地面文物古迹保护方案,用科技为文物古迹撑起“智慧伞”
    一、行业背景当前,文物保护单位的安防系统现状存在各种管理弊端,安防系统没有统一的平台,系统功能不足、建设标准不同,产品和技术多样,导致各系统独立,无法联动,形成了“信息孤岛”。地面文物和博物馆内部安防管理上,建设安全、可靠、先进的文物安全技术防范系统、实现现代化管理是十分必......
  • 创新科技与水资源:数字孪生流域的角色
    当今社会,水资源管理和防洪治理是一项重要的任务,涉及许多关键领域,如灌溉、供水、排水和防洪。这些任务通常在大规模的流域中进行,涉及复杂的水文和气象数据,需要高效的监测和管理。在这一背景下,山海鲸数字孪生流域应运而生,为现代水资源管理和防洪治理带来了前所未有的创新和智能化解......
  • 恒创科技:服务器内存一般多大?(服务器内存够用吗)
    ​在建设一个网站或者应用程序时,选择合适的服务器配置是非常重要的。其中,服务器内存是一个关键因素,它直接影响着网站的性能和用户体验。那么,服务器内存一般多大呢?这个问题没有一个固定的答案,因为不同类型的网站和应用程序对内存的需求是不同的。下面我将从几个常见类型......
  • 2014腾讯校园招聘实习技术类笔试题目/STL小结
    STL就是StandardTemplateLibrary,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作......
  • 示波器入门 - 示波器水平控件和垂直控件 - 新手学用是德科技示波器
    今天我们学习使用示波器水平控件和垂直控件。本指南说明如何使用 Keysight1000B系列示波器-初次使用示波器的详细步骤。InfiniiVision1000X系列示波器​www.keysight.com/cn/zh/products/oscilloscopes/infiniivision-2-4-channel-digital-oscilloscopes/infiniivision-1......
  • 2023 年华中科技大学程序设计竞赛新生赛
    2023年华中科技大学程序设计竞赛新生赛P9774[HUSTFC2023]新取模运算-洛谷|计算机科学教育新生态(luogu.com.cn)\(n!\%p\),易知\(1\simn\%p\)为\(1,2,3\dotsp-1,0,1,2\dots\),所以我们可以预处理出\(1\simp-1\)的阶乘,那么答案就是\((p-1)!^{\frac{n}{p}}\t......
  • 【守于拙璞,志在光华】璞华科技帮助用户实现数智化的“初心”
    拙璞,一种道法自然、诚恳质朴的态度,有一些憨厚,有一些可爱。光华,一个振兴产业、求索成长的志向,闪耀着使命,闪耀着担当。有一群人,将“守于拙璞,志在光华”奉为初心,扎根苏州、武汉、北京,走向东京,开启了一场静悄悄的科技发展之路。璞华科技,是一家以长期主义精耕业务、基于行业最佳实......
  • 噢易云笔试
    1.选择题1.计算机基本部件现在所用的电脑都是由冯诺依曼五大结构组成,分别是输入、输出、存储器、运算器以及控制器。其中五大部分具有典型应用的输入是鼠标键盘、输出是显示器、打印机,储存是硬盘,运算器是CPU(中央处理器),控制器(多种控制电路组成的集合)。摄像头在拍摄的时候属于......