一道算法题

简介: 一道算法题

关于数组!!!

//问题:给你n个无序的int整型数组arr,并且这些整数的取值范围都在0-20之间,要你在 O(n) 的时间复杂度中把这 n 个数按照从小到大的顺序打印出来。

//问题:给你n个无序的int整型数组arr,并且这些整数的取值范围都在0-20之间,要你在 O(n) 的时间复杂度中把这 n 个数按照从小到大的顺序打印出来。
public class Test2 {
  public void f(int arr[]) {
 
    int[] temp = new int[21];
    for (int i = 0; i < arr.length; i++) {
      temp[arr[i]]++;
    }
    // 顺序打印
    for (int i = 0; i < 21; i++) {
      for (int j = 0; j < temp[i]; j++) {
        System.out.println(i);
      }
    }
  }
 
  public static void main(String[] args) {
    int arr[] = { 1, 2, 3, 4, 8, 9, 10, 6, 7, 1 };
    arr[1]++;
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]); 
    }
    
    Test2 test2 = new Test2();
    test2.f(arr);
  }
}
目录
相关文章
|
27天前
|
自然语言处理 算法 BI
Baum-Welch算法
Baum-Welch算法是一种用于隐马尔可夫模型(HMM)的训练算法,通过期望最大化(EM)框架迭代估计模型参数,直至收敛。该算法主要应用于语音识别、生物信息学和自然语言处理等领域,通过优化初始状态概率、状态转移概率和观测概率,提高模型对观测数据的拟合度。尽管存在局部最优和计算复杂性等挑战,但仍是HMM参数估计的重要工具。
|
3月前
|
算法
算法题(6)
算法题(6)
27 7
|
3月前
|
算法 机器人
算法题(3)
算法题(3)
46 5
|
算法 索引
插值查找算法
插值查找算法
|
机器学习/深度学习 人工智能 算法
秒懂算法 | 尺取法
尺取法(又称为:双指针、two pointers),是算法竞赛中一个常用的优化技巧,用来解决序列的区间问题,操作简单、容易编程。 本篇介绍了尺取法的概念、反向扫描、同向扫描、模板、典型题目。
384 1
秒懂算法 | 尺取法
|
算法
算法题
1.厘米换算英尺英寸 分析:题目非常简单,但是今晚喝的有点多,有点迷 如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。
470 0
算法题
拓展欧几里得算法
拓展欧几里得算法
97 0
|
算法
2015年408算法题
故辅助数组 q 的大小为 n+1,各元素的初值均为 0。依次扫描链表中的各结点,同 时检查 q[|data|]的值,如果为 0,则保留该结点,并令 q[|data|]=1;否则,将该结点从链表中删除。
231 0
2015年408算法题
|
算法
左神起百算,成机算法魂
左神起百算,成机算法魂
112 0
左神起百算,成机算法魂
|
人工智能 算法 搜索推荐
线性排序算法(1)
排序 选择排序(适用于线性排序) 思路,2层遍历 第一步:选择最小的元素,与第一个元素交换。 第二步:从第二个元素到最后一个元素,选择最小元素,与第二元素交换 完成前两步,第1第2元素已经排好序。
1008 1
下一篇
DataWorks