数据结构
文章平均质量分 92
阿龙先生啊
懂点大数据运维, 会写两三行代码,自学了一些 docker, kubernetes。博客主要分享大数据、Linux、云原生相关知识。 目前职位大数据工程师,长远打算做个会敲代码的厨子。
展开
-
牛客剑指offer-----数组(在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数)
牛客剑指offer :题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路那么选取右上角或者左下角的元素a[row][col]与target进行比较,当target小于元素a[row][col]时,那么target必定在元素a所在行的左...原创 2019-07-29 10:35:01 · 681 阅读 · 0 评论 -
判断是否是回文字符串(Java实现)
1.最最弱智的做法找出区间数字的所有回文数,此例我们判断了五位数字,找出了五位数中所有的的回文数,大一开始接触C语言就是这么干的。public class Main{ public static void main(String [] args){ int count2 = 0; for (int j = 10000; j <= 99999; j++) { int g...原创 2019-07-17 23:22:55 · 12279 阅读 · 3 评论 -
牛客剑指offer-----数组(在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数)
牛客剑指offer-----数组题目描述:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。解题思路:使用java的Map接口实现,将数组中的元素放入key中,而value值...原创 2019-07-29 16:16:29 · 1351 阅读 · 1 评论 -
回环变位(2017校招一模-----循环单词)
今天在算法4中看到了一个回环变位,觉得好高大上,由于才开始学习的算法,我也是抱着虚心学习的态度,打算实现一下,顺便看到了2017校招一模的第二个编程题就是回环变位的变形,下面细说一二。 题目是这样滴:如果字符串s中的字符循环转移任意位置之后得到一个新的字符串t,那么s就被称为t的回环变位(circular rotation),例如ACTGACG就是TGACGAC的一个回环变位,反之亦然判定这个条原创 2017-06-05 01:20:38 · 810 阅读 · 0 评论 -
java 生成随机6位每位都不重复的数字
方法1.采用随机索引交换元素0-9的数字索引从0开始 索引 和数字一一对应,使用产生随机索引的方式随机产生数字,将产生的随机索引的元素和后面的元素交换位置,将数字的顺序打乱且不重复,最后打印输出前6个数字。 int[] array = {0,1,2,3,4,5,6,7,8,9}; Random rand = new Random(); for (int i = 10;...原创 2019-07-20 17:21:54 · 4869 阅读 · 0 评论 -
牛客剑指offer-----数组(给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1])
牛客剑指offer-----数组题目描述:给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不能使用除法。解题思路:B[i]的值可以看作下图的矩阵中每行的乘积。下三角用连乘可以很容求得,上三角,从下向上也是连乘。 因此我们的思路就很清晰了,先算下三角中的连乘,即我们先算出...原创 2019-07-29 16:08:59 · 569 阅读 · 0 评论 -
石头剪刀布c++实现
问题描述: 编写一个程序,玩“石头”“剪刀”“布”的游戏,在这个游戏中,两位玩家通时说出“石头”“剪刀”“布” 如果一位玩家所选的对象击败了另一个玩家所选的对象,那么前者就是赢家,规则是:布吃石头,石头吃剪刀 剪刀吃布,为选择的对象和最终的结果使用枚举,使用标准头文件中定义的ran()函数,为计算生成随机的选择。 输入: choose either rock,shear,cloth(R/原创 2017-12-01 00:30:09 · 12667 阅读 · 0 评论 -
排序-------直接插入(Java实现)
1、算法思想插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。选择排序 是从无序的子序列中 选出最小的 依次插入 有序 子序列中;而插入排序是 从 有序的子序列中 依次扫描比...原创 2019-08-18 16:52:39 · 126 阅读 · 0 评论 -
排序-------简单选择实现(Java实现)
一、算法思想第一趟简单选择排序时,从第一个记录开始,通过n-1次关键字的比较,从 n 个记录中选出关键字 最小的 记录,并和 第一个记录 进行交换。第二趟简单选择排序时,从第二个记录开始,通过 n-2 次关键字的比较 ,从 n -1个记录中选出关键字最小的记录,并和第二个记录开始进行交换。…第i趟排序时,从第 i 个记录开始, 通过 n-i 次关键字的比较,从 n -i +1 ...原创 2019-07-31 20:46:48 · 253 阅读 · 0 评论 -
排序-------冒泡实现(Java实现)
一、概念与算法思想 冒泡排序形象的比喻为锅中的开水沸腾,锅中的气泡由锅底向上冒出,气泡由小变大。冒泡排序法又称为交换排序法,由第一个元素开始,比较相邻元素的大小,若按照从小到大排序(a1……a7..an),如果相邻元素a2原创 2017-05-22 23:28:05 · 411 阅读 · 0 评论