坛子里一个哥们的面试题:
数组A与数组B均已排好序,用最有效率的办法将其合并成为数组C,要考虑到重复的数字将其去重
public class test {
public static int[] b = { 1, 3, 5, 7, 9, 10, 11, 90 };
public static int[] a = { 2, 5, 7, 8, 9 };
public static void main(String[] args) {
test1(a,b);
Map<Integer,Integer> map=sortByTreeMap(a,b);
Iterator iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry mapentry = (Map.Entry)iterator.next();
System.out.print(mapentry.getValue()+" ");
}
}
public static void test1(int[] a, int[] b){
int[] c = new int[a.length + b.length];
int i = 0, j = 0, k = 0;
while (i < a.length && j < b.length) {
if (a[i] <= b[j]) {
if (a[i] == b[j]) {
j++;
} else {
c[k] = a[i];
i++;
k++;
}
} else {
c[k] = b[j];
j++;
k++;
}
}
while (i < a.length) {
c[k] = a[i];
k++;
i++;
}
while (j < b.length) {
c[k] = b[j];
j++;
k++;
}
System.out.println(Arrays.toString(c));
}
public static Map sortByTreeMap(int[] a, int[] b){
Map<Integer,Integer> map=new TreeMap<Integer,Integer>();
for(int i=0;i<a.length;i++){
map.put(a[i], a[i]);
}
for(int i=0;i<b.length;i++){
map.put(b[i], b[i]);
}
return map;
}
}
分享到:
相关推荐
**定义与原理**:快速排序是一种非常高效的排序算法,采用分治法策略来把一个序列分为较小和较大的两个子序列,然后递归地排序两个子序列。 **Java实现**: 这里给出快速排序的核心思想,具体代码略。 **时间...
它通过遍历字符串,检查每个字符是否属于双字节字符范围,如果是则跳过下一个字符,以保证每次只增加一个完整字符的计数。当达到指定长度时,返回截取的字符串。 #### GBSubstr2函数 `GBSubstr2`函数提供了一种更...
一个堆排序算法 c++写的 逻辑相同 可自行 改为java 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一个堆排序算法 c++ 写一...
接下来,`sort_display_test.rb`和`sort_display.rb`这两个文件很可能代表了一个测试用例和对应的实现。在Rails中,我们遵循TDD(Test-Driven Development)原则,即先编写测试,再编写满足测试的代码。`sort_...
例如,可能会要求你实现一个排序算法,或者解决一个经典的计算机科学问题,如二分查找、图的遍历等。 其次,算法理解与应用是考察技术深度的关键。面试中可能涉及动态规划、贪心算法、回溯法等高级算法,以及复杂度...
1. **编程语言**:面试者可能被要求展示对一种或多种编程语言(如Java、Python、C++、JavaScript)的熟练程度,包括语法、面向对象编程、异常处理、内存管理等方面的知识。 2. **数据结构**:理解并运用各种数据...
面试题15:一个参数可以既是const又是volatile吗 面试题16:一个指针可以是volatile吗 第5章 引用和指针 5.1 引用 面试题1:什么是引用 面试题2:常引用有什么作用 面试题3:流操作符重载为什么返回引用 5.2 指针 ...
Google 面试题集锦就是一个集合了 Google 面试题的资源,涵盖了逻辑、数学、算法等多个方面的知识点。 在硅谷高科技公司的面试中,经常会出现一些经典的面试题,这些问题的目的是考察应聘者的思维能力、逻辑思维...
在这个“排序面试题代码”压缩包中,包含了直接插入排序和希尔排序两种经典排序算法的完整实现,这些都是面试中常见的问题。 1. **直接插入排序**: 直接插入排序是一种简单直观的排序算法,它的工作原理类似于...
在Java编程语言中,排序是数据结构和算法领域的一个核心概念,经常出现在面试场景中。以下是对"面试最常见的问题(java各种排序法)"这一主题的详细解释。 首先,我们来了解一下排序的基本定义:排序是将一组数据...
数据结构是计算机科学中一个非常重要的概念,它涉及如何组织和存储数据以便高效地访问和修改。微软面试100题系列中的数据结构部分可能包含以下知识点: 1. **基本数据结构**:包括数组、链表、栈、队列等。 - **...
文件描述了一个名为July的人在csdn论坛上分享微软等公司的数据结构与算法面试题集,并与网友共同讨论解答,最终形成了名为“结构之法算法之道”的博客。这说明面试题库对于程序员的准备和提高具有极大的帮助,而且在...
【全国软件公司面试题集锦】是...综上,【全国软件公司面试题集锦】是一个全面的复习资料,它覆盖了软件开发人员所需掌握的核心技术,对于求职者来说,深入理解和熟练应用这些知识点将极大地提升他们在面试中的竞争力。
提供的压缩文件中的"que.txt"可能包含具体的面试题,"算法面试题大全.doc"可能是各种算法问题的集合,而"程序员面试智力、算法题汇总一.pdf"则可能包含更多智力和算法题目,这些资源可以帮助面试者深入理解和练习...
1. **兔子数列(斐波那契数列)**:这是一个典型的递归问题,第n位的数值等于前两位之和。斐波那契数列在计算机科学中常用于学习递归和动态规划。 2. **质数判断**:检查一个正整数是否为质数,可以使用遍历法,从2...
这些企业通常会设置一系列具有挑战性的面试题,以评估候选人的综合能力和潜在价值。本文将深入探讨世界500强面试题的特点、常见类型及应对策略,帮助求职者更好地准备此类面试。 1. 面试题分类 世界500强面试题通常...
单例模式是一种设计模式,确保一个类只有一个实例,并提供全局访问点。在Python中,可以通过元类或者装饰器来实现。第一种方法利用元类Singleton,重写`__new__`方法,确保每次创建对象时都返回同一个实例。第二种...
` 创建了两个对象: 一个字符串常量和一个`String`对象。 8. **Math.round 方法** - `Math.round(11.5)` 返回 12。 - `Math.round(-11.5)` 返回 -11。 - `Math.round` 方法通过加 0.5 后向下取整的方式计算最...