热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Java常见的数组相关笔试编程题

1.对正整数进行分解质因数如传入100,打印出2*2*5*5**思路:*首先找到一个最小的质数i*1.如果这个质数恰等于num,则说明分解质因数的过程已经结束,打印出即可*2.如

1.对正整数进行分解质因数

// 如传入100, 打印出2*2*5*5/** 思路:* 首先找到一个最小的质数i* 1. 如果这个质数恰等于num, 则说明分解质因数的过程已经结束, 打印出即可* 2. 如果num > i, 但num能被i整除, 则打印出i的值, 并用num除以i的商, 作为新的正整数num, 重复执行第一步* 3. 如果num不能被i整除, 则用i+1作为i的值, 重复执行第一步**/
public static void t0(int num) {for (int i &#61; 2; i <&#61; num; i&#43;&#43;) {while (num !&#61; i) {if (num % i &#61;&#61; 0) {System.out.print(i &#43; "*");num &#61; num / i;} else {break;}}}System.out.println(num);
}

2.在一个给定的从1到100的整型数组中&#xff0c;快速找到缺失的数字

/**思路:* 1. 首先对集合进行升序排序* 2. 在没有确实数字的情况下, &#96;排序后&#96;相邻间的两数字差值应为1, 需要处理的是差值大于1的 [差值为1和差值为0的不需要处理]** &#64;param arr 正整数数组 如int[] list &#61; {1, 10, 4, 2, 8, 3, 2, 13};**/
public static void t1(int[] arr) {if (arr !&#61; null) {ArrayList nums &#61; new ArrayList();int length &#61; arr.length;if (length &#61;&#61; 1) {System.out.println(nums);}Arrays.sort(arr);for (int i &#61; 0; i 1) {int x &#61; 0;while (x }

3.对字符串进行中的数字进行正序排序&#xff0c;并且字符串中字母的位置不变

//如&#xff0c;43a6f9d8, 输出34a6f8d9/**思路:* 1. 先遍历字符串取出其中的数字放进一个集合, 然后对集合进行正序排序* 2. 再次遍历字符串, 遇到字符为数字的, 取出数字字符集合numChars中的第一个元素(索引j&#61;0)放在此位置, 并对numChars下一个取出的元素索引定位为j&#43;&#43;**/
public static String t3(String str) {if (StringUtils.isBlank(str)) {return str;}ArrayList numChars &#61; new ArrayList<>();char[] chars &#61; str.toCharArray();for (int i &#61; 0; i }

4.在一个未排序的整型数组中, 找到最大和最小的数字

// 如&#xff0c;int[] list &#61; {-2, 1, 99, 10, 4, 2, -1, 8, 3, 2, 13, 0}&#xff1b;输出max: 99 ; min: -2/**思路:* 1. 初始化最大数字max和最小数字min为数组中第一个元素* 2. 将max和数组中"下一个"元素next比较, 如果next>max, 则max&#61;next* 3. 将min和数组中"下一个"元素next比较, 如果nextpublic static void t4(int[] arr) {if (arr !&#61; null) {int length &#61; arr.length;if (length &#61;&#61; 1) {System.out.println("the max num and min num both are: " &#43; arr[0]);} else {int max &#61; 0;int min &#61; 0;for (int i &#61; 0; i max) {max &#61; num;}if (num }

5.一个整型数组中&#xff0c;找到一个所有成对的数字&#xff0c;满足它们的和等于一个给定的数字

//如&#xff0c;int[] arr &#61; {-2, 1, 99, 10, 4, 2, -1, 8, 3, 2, 13}, sum为3; 找出 -1和4, 1和2即可;
//如&#xff0c;int[] arr &#61; {1, 1, 2, 3, 3, 1, 2, 0, 0}, sum为3; 找出1和2, 3和0即可
public static void t5_0(int[] arr, int sum) {if (arr !&#61; null) {int length &#61; arr.length;Arrays.sort(arr);HashSet set &#61; new HashSet<>();for (int i &#61; 0, j &#61; length - 1; i }

6.如果一个数组包含多个重复元素&#xff0c;找到这些重复的数字

//如&#xff0c;int[] arr &#61; {1, 1, 2, 3, 3, 4, 2, 0, 0}&#xff1b;输出0,1,2,3即可
public static void t6(int[] arr) {if (arr !&#61; null) {int length &#61; arr.length;Arrays.sort(arr);HashSet res &#61; new HashSet<>();for (int i &#61; 0; i }

7.Java 实现从一个给定数组中删除重复元素

//如&#xff0c;int[] arr &#61; {1, 1, 2, 3, 3, 4, 2, 0, 0}&#xff1b;输出 4
public static void t7(int[] arr) {if (arr !&#61; null) {int length &#61; arr.length;Arrays.sort(arr);ArrayList res &#61; new ArrayList<>();ArrayList repeatNums &#61; new ArrayList<>();for (int i &#61; 0; i }

8.Java实现数组反转

public static Object t8(int[] arr) {if (arr !&#61; null) {// 可以采用t8_t方法比较通用//t8_t(arr, 0, arr.length);int i &#61; 0;for (int j &#61; arr.length - 1; j > i; &#43;&#43;i) {int tmp &#61; arr[j];arr[j] &#61; arr[i];arr[i] &#61; tmp;--j;}}return ArrayUtils.toString(arr);
}private static void t8_t(int[] arr, int startIndexInclusive, int endIndexExclusive) {if (arr !&#61; null) {int i &#61; startIndexInclusive <0 ? 0 : startIndexInclusive;for (int j &#61; Math.min(arr.length, endIndexExclusive) - 1; j > i; &#43;&#43;i) {int tmp &#61; arr[j];arr[j] &#61; arr[i];arr[i] &#61; tmp;--j;}}
}


推荐阅读
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • JDK源码学习之HashTable(附带面试题)的学习笔记
    本文介绍了JDK源码学习之HashTable(附带面试题)的学习笔记,包括HashTable的定义、数据类型、与HashMap的关系和区别。文章提供了干货,并附带了其他相关主题的学习笔记。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 判断数组是否全为0_连续子数组的最大和的解题思路及代码方法一_动态规划
    本文介绍了判断数组是否全为0以及求解连续子数组的最大和的解题思路及代码方法一,即动态规划。通过动态规划的方法,可以找出连续子数组的最大和,具体思路是尽量选择正数的部分,遇到负数则不选择进去,遇到正数则保留并继续考察。本文给出了状态定义和状态转移方程,并提供了具体的代码实现。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
    本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
author-avatar
纯De魔力_629
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有