
算法
文章平均质量分 57
徐jiankang
原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,现在高校任教,欢迎关注,点赞,收藏。
展开
-
冒泡排序-选择排序-插入排序-快速排序(java版实现)
排序就是将输入的数字按照从小到大的顺序进行排列。由于排序是一个比较基础的问题,所以排序算法的种类也比较多。最近学习了几种常见的排序算法,下面介绍如何使用java代码实现对数组进行从下到大排序。一、冒泡排序1、概念冒泡排序通过序列左边开始比较相邻位置数字的大小,左边数字大于右边了交换位置,只到最大的到最右边,然后再从左边开始比较相邻位置的数字,左边大于右边交换位置,只到最大...原创 2020-02-15 19:00:23 · 477 阅读 · 0 评论 -
二叉排序树代码实现(java版)
一、定义1、一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)没有键值相等的结点。二、基础代码1、先定义一个节点类,包括左节点、右节点、值三个实例变量。public class Node { priv...原创 2020-02-07 10:53:39 · 2112 阅读 · 0 评论 -
给定一个由正数,负数和0组成的整数数组,将所有为0的元素,挪到数组末尾。要求时间复杂度O(n)
一、代码展示: package comployeetest;public class Test1 { public static void main(String[] args) { int[] arr = { 0, -2, 3,0,0,0, 4, 0, 1, 0, -1, 0, 3 }; order(arr); for (int i : arr) { System...原创 2019-05-28 16:00:46 · 525 阅读 · 0 评论 -
2.给定任意一个自然数,获取它重新排列后,下一个比它大的自然数,要求时间复杂度O(n)。例如: 给定1233,它的下一个是1323; 给定1323,它的下一个是1332
一、题目给定任意一个自然数,获取它重新排列后,下一个比它大的自然数,要求时间复杂度O(n)。例如:给定1233,它的下一个是1323;给定1323,它的下一个是1332;这是一道面试题,不理解的可以去研究一下字典序算法。二、代码public class Test2 { public static void main(String[] a...原创 2019-05-28 16:06:56 · 485 阅读 · 0 评论