写点什么

Java 数据结构和算法百大面试题

  • 2019-08-19
  • 本文字数:8840 字

    阅读完需:约 29 分钟

Java数据结构和算法百大面试题

我一直在发布关于数据结构和算法的各类面试例题,诸如数组(Array)、队列(Queue)、堆栈(Stack)、二进制树(Binary tree)、链表(LinkedList)、字符串(String)、数字(Number)、动态数组(ArrayList)等等。本文是对我过去发布的这些例题的一份汇总和索引,将来再出新例题时我也会添加到这里。这些题目都是关于数据结构和算法常见的面试问题。


如果你想练习、提升数据结构和算法程序的水平,这篇汇总文章就很值得收藏了。练习这些题目时,我建议读者先自己做一遍再检查答案。


我知道面试中一般不会直接问这些问题,其中有很多题目也很老了,但毕竟它们都是精选出来的好题,可以帮助大家提升编程、算法和解决问题的能力。

堆栈


问题 1:使用数组来实现堆栈


编写进栈(push)和出栈(pop)方法来演示堆栈行为(后进先出,Last In First Out)。


解决方案:使用数组实现堆栈的Java程序


问题 2:使用链表实现堆栈


编写进栈和出栈方法来演示堆栈行为(后进先出)。


解决方案:使用链表实现堆栈的Java程序


问题 3:使用两个队列实现堆栈


本题需要使用两个队列来实现堆栈行为。编写进栈和出栈方法来演示 Stack 行为(后进先出)。


解决方案:使用两个队列实现堆栈的Java程序


问题 4:使用另一个堆栈排序指定堆栈


本题需要使用另一个堆栈排序指定堆栈。本题可以使用堆栈的进栈和出栈操作来完成任务。


解决方案:使用另一个堆栈排序指定堆栈

队列


问题 5:在 Java 中使用数组实现队列


本题需要使用数组来实现队列


解决方案:在Java中使用数组实现队列


问题 6:使用两个队列实现堆栈


本题需要使用链表来实现队列。


解决方案:使用链表实现队列的程序

链表

问题 7:在 Java 中实现单链表



本题需要实现单链表数据结构。编写一个简单的程序来演示插入和删除操作。


解决方案:在Java中实现单链表的程序


问题 8:如何使用 Java 反转链表


本题需要编写一个迭代和递归的方案来反转链表。


解决方案:使用Java反转链表的程序


问题 9:如何查找链表的中间元素


本题需要编写一个Java程序以最优化的方式查找链表的中间元素。



解决方案:查找链表中间元素的Java程序


问题 10:如何从链表中找到倒数第 n 个元素


本题需要编写 Java 程序以最优化的方式查找链表的倒数第 n 个元素。


在问题 9 中,节点 7 就是链表中倒数第 3 个元素。


解决方案:如何从链表中查找倒数第n个元素


问题 11:如何检测链表中的循环。如果链表有循环,请找到循环的起始节点


本题需要编写一个 Java 程序来检测链表中是否存在循环,如果找到循环则需要找到它的起始节点。


解决方案:如何检测链表中的循环


问题 12:如何检查链表是否是回文?


回文是一个单词、短语、数字或其它符号或元素序列,它们正序和倒序读起来是一样的。例如 12121 就是一个回文,因为它正读反读都一样。“madam”也是一个回文。我们需要编写 Java 程序来检查链表是否是回文。


解决方案:用于检查链表是否为回文的Java程序


问题 13:找到两个链表的交集?


给定两个单链表,检查两个链表是否相交;如果它们相交就找出交集。



解决方案:两个链表的交集


问题 14:如何反转成对链表?


本题需要编写一个 Java 程序来反转成对链表。



解决方案:反转成对链表的Java程序


问题 15:如何使用 Java 实现双链表?


本题需要编写一个 Java 程序实现双链表。



解决方案:Java中的双链表

数组


问题 16:编写 Java 程序以查找数组中最小和最大的元素


本题中会给定一个包含许多数字的数组,需要找出其中最小和最大的元素


解决方案:查找数组中最小和最大元素的Java程序


问题 17:找出数组中缺少的数字


本题会给定一个包含 1 到 n 的整数数组,但少了 1 到 n 中的某个数字。需要提供找到丢失数字的最佳方案。数组中的数字不能重复。


例如:


int[] arr1={7,5,6,1,4,2};Missing number: 3(缺少的数字是3)int[] arr2={5,3,1,2};Missing number: 4(缺少的数字是4)
复制代码


解决方案:在数组中查找缺少的数字


问题 18:在已旋转和排序的数组中搜索元素


本题会给定一个排序和旋转过的数组,如下所示:


int arr[]={16,19,21,25,3,5,8,10};
复制代码


如果你发现数组已做过排序和旋转,就要在 o(log n)的时间复杂度内搜索上述数组中的元素。


解决方案:在已旋转和排序的数组中搜索元素


问题 19:找到已排序和旋转的数组中的最小元素


本题会给定一个已排序和旋转的数组,如下所示:


int arr[]={16,19,21,25,3,5,8,10};Minimum element in the array: 3(数组中最小的元素是3)
复制代码


如果你发现数组已做过排序和旋转,就要在 o(log n)的时间复杂度内找出数组中的最小元素。


解决方案:在已排序和旋转的数组中查找最小元素


问题 20:找到数组中的第二大数字


本题会给定一个已排序和旋转过的数组,如下所示:


例如


int[] arr1={7,5,6,1,4,2};Second largest element in the array: 6(数组中第二大的元素是6)
复制代码


解决方案:查找数组中第二大数字的Java程序


问题 21:查找数组中出现奇数次数的数字


本题会给定一个整数数组,其中所有数字都会出现偶数次,只有一个例外。本题需要找到出现奇数次数的数字,方案限定在 o(n)的时间复杂度和 o(1)的空间复杂度内。


例如


int array[] = new int[]{20, 40, 50, 40, 50, 20, 30, 30, 50, 20, 40, 40, 20};Number which occurs odd number of times is: 50(出现奇数次的数字是50)
复制代码


解决方案:查找数组中出现奇数次数字的Java程序


问题 22:找到火车站所需的最少站台数量


本题会给定前往特定车站列车的到达和离开时间。需要找到在任意时间点上车站所需的最小站台数量。


例如


arrival[] = {1:00, 1:40, 1:50, 2:00, 2:15, 4:00} departure[] = {1:10, 3:00, 2:20, 2:30, 3:15, 6:00}No. of platforms required in above scenario = 4(上述情况下需要的最少站台数为4)
复制代码


请注意,列车到达时间按时间顺序排列。


解决方案:找到火车站所需的最少站台数量


问题 23:在数组中找到一个和最接近零的元素对


给定一个包含正负整数的数组,需要找出数组中和最接近零的整数对。


例如


array[]={1,3,-5,7,8,20,-40,6};The pair whose sum is closest to zero: -5 and 6(和最接近零的整数对是-5和6)
复制代码


解决方案:使用Java在数组中找出和最接近零的元素对


问题 24:给定一个已排序的数组和一个数字 x,找到数组中和最接近 x 的元素对


给定一个已排序数组,我们需要找到数组中和最接近数字 X 的元素对。


例如


array[]={-40,-5,1,3,6,7,8,20};The pair whose sum is closest to 5: 1 and 3(这里和最接近5的元素对是1和3)
复制代码


解决方案:使用Java在数组中找到和最接近X的元素对


问题 25:查找数组中和等于给定数字的所有元素对


给定一个数组,我们需要找到和等于数 X 的所有元素对。


例如


array[]={ -40, -5, 1, 3, 6, 7, 8, 20 };Pair of elements whose sum is equal to 15: 7, 8 and -5, 20(和等于15的元素对有7和8、-5和20)
复制代码


解决方案:查找数组中和等于给定数字的所有元素对


问题 26:给定一个数字 0 和 1 随机排序的数组,需要把 0 和 1 分开


例如


arr[] = {0,1,0,0,1,1,1,0,1}Array after separating 0 and 1 numbers(将0和1分开后数组变为):{0,0,0,0,1,1,1,1,1}
复制代码


解决方案:在数组中分离0和1


问题 27:在数组中分离奇数和偶数


给定一个整数数组,需要在数组中分离奇数和偶数。


请注意,元素顺序可以改动。


例如


arr[] = {12, 17, 70, 15, 22, 65, 21, 90}Array after separating odd and even numbers(分离奇偶数后数组变为):{12, 90, 70, 22, 15, 65, 21, 17}
复制代码


解决方案:在数组中分离0和1


问题 28:给定一个只有 0、1 和 2 的数组。编写一个函数,以 O(n)的时间复杂度排序给定数组


例如


Input:[1, 2, 2, 0, 0, 1, 2, 2, 1]
Output:[0, 0, 1, 1, 1, 2, 2, 2, 2]
复制代码


解决方案:对只有0、1和2的数组排序


问题 29:在数组中查找局部最小元素


局部最小元素比其旁边的元素都小


例如


Input:int [] arr = {10, 5, 3, 6, 13, 16, 7};Output: 3
int []arr = {11,12,13,14};Output: 11
int []arr = {10};Output: 10
int []arr = {8,6};Output: 6
复制代码


解决方案:在数组中查找局部最小元素


问题 30:使用 Java 找到滑动窗口的最大值


给定一个整数数组和一个整数 k,从所有大小为 K 的连续子数组中找出最大元素。


例如


Input:Input: int[] arr = {2,6,-1,2,4,1,-6,5}int k = 3output: 6,6,4,4,4,5
复制代码


解决方案:使用Java找到滑动窗口的最大值


问题 31:计算已排序数组中每个元素的出现次数(或频率)


给定包含重复项的整数排序数组。找出数组中存在的每个元素的频率。


频率定义为数组中元素的出现次数。


例如:


Input:Input:int[] arr = {1, 1, 1, 3, 3, 4, 5, 5, 6, 6};Output:Frequency of 1 is: 3(数字1的频率为3)Frequency of 3 is: 2Frequency of 4 is: 1Frequency of 5 is: 2Frequency of 6 is: 2
复制代码


解决方案:计算已排序数组中每个元素的出现次数或称频率


问题 32:在数组中查找等于给定和的子数组


给定一个非负整数数组和一个数字。需要打印和等于给定整数的子数组的所有起始和结束索引。


例如


Input:Input-int[] arr = {2, 3, 6, 4, 9, 0, 11};int num = 9Output-starting index: 1, Ending index: 2starting index: 5, Ending index: 5starting index: 5, Ending index: 6
复制代码


解决方案:在数组中查找等于给定和的子数组


问题 33:找到数组中的峰值元素


数组中的峰值元素大于等于邻近元素,即对于索引中 i 处的元素,索引 i-1 和 i+1 处的邻近元素必须小于等于前者。


解决方案:在数组中查找峰值元素


问题 34:找到数组中的 leader


我们需要打印数组中的所有 leader。Leader 元素大于它右侧的所有元素。


例如


arr[]={14, 12, 70, 15, 99, 65, 21, 90}Here 99 and 90 are leader elements(99和90是leader元素)
复制代码


解决方案:在数组中查找leader


问题 35:在已排序的二进制数组中找出数字 1 的数量


在给定的已排序二进制数组中打印数字 1 的数量。


例如


Input:int[] arr = {0,0,0,1,1,1,1};output: 4int[] arr = {0,0,1};output: 1
复制代码


解决方案:在已排序的二进制数组中对数字1计数


问题 36:在整数数组中查找第一个重复元素


找到整数数组中的第一个重复元素。


例如:


Input:Input: array[] = {10, 7, 8, 1, 8, 7, 6}Output: 7 [7 is the first element actually repeats(7是第一个重复元素)]
复制代码


解决方案:在整数数组中查找第一个重复元素


问题 37:检查数组元素是否连续


给定一个数组,我们需要检查数组是否是连续元素。


例如


Input: array[] = {5, 3, 4, 1, 2}Output: trueAs array contains consecutive elements from 1 to 5(数组中有1到5的连续元素)Input: array[] = {47, 43, 45, 44, 46}Output: trueAs array contains consecutive elements from 43 to 47Input: array[] = {6, 7, 5, 6}Output: falseAs array does not contain consecutive elements.(数组中没有连续元素)
复制代码


解决方案:检查数组元素是否连续


问题 38:Java 中数组的排列


给定包含不同整数的数组,打印数组的所有排列。


例如


array: [10, 20, 30]Permuations are:[10, 20, 30][10, 30, 20][20, 10, 30][20, 30, 10][30, 10, 20][30, 20, 10]
复制代码


解决方案:Java中数组的排列


问题 39:在 K 位置旋转数组。


例如


N=6 and k=2If Arr[] = {1, 2, 3, 4, 5, 6} and k=2then rotated array will be {5, 6, 1, 2, 3, 4}
复制代码


[解决方案:按 K 位置旋转数组(https://java2blog.com/rotate-array-by-k-positions/)


问题 40:股票买卖策略


给定整数数组,元素代表某日股价,找出一次交易可获得的最大利润。


所以需要找出(买入日,卖出日)的元素对,买入日值小于等于卖出日值,并最大化利润。


例如


int arr[]={14, 12, 70, 15, 99, 65, 21, 90};Max profit can be gain by buying at 1th day(0 based indexing) and sell at 4th day.(第一天买入第四天卖出利润最大)Max profit = 99-12 =87
复制代码


解决方案:股票买卖的利润最优策略


问题 41:找出数组中后面较大元素与前面较小元素的最大差值


给定整数数组,找出后面较大元素与前面较小元素的最大差值


例如


int arr[]={14, 12, 70, 15, 95, 65, 22, 30};Max Difference =95-12 = 83
复制代码


解决方案:找出数组中后面较大元素与前面较小元素的最大差值


问题 42:在按行和按列排序的矩阵中搜索


给定按行和按列排序的矩阵,需要以最小的时间复杂度搜索元素。


解决方案:在按行和按列排序的矩阵中搜索


问题 43:和最大的连续子数组


在一维数字数组内找到和最大的连续子数组。


例如


for the sequence of values −2, 1, −3, 4, −1, 2, 1, −5, 4; the contiguous subarray with the largest sum is 4, −1, 2, 1, with sum 6
复制代码


解决方案:和最大的连续子数组


问题 44:在数组中找到和为给定值的连续子数组


给定正整数数组和值 X,找到其和等于 X 的连续子数组。


例如


arr[]={14, 12, 70, 15, 99, 65, 21, 90}; X =97.Sum found between index 1 to 3Elements are 12, 17 and 15
复制代码


解决方案:在数组中找到和为给定值的连续子数组


问题 45:使用 Java 找出字符串数组中最长的公共前缀


给定字符串数组,找出最长的公共前缀。


例如


字符串[] strArr={"java2blog","javaworld","javabean","javatemp"};So Longest common prefix in above 字符串 array will be “java” as all above string starts with “java”.最长的公共前缀是“java”。
复制代码


解决方案:使用Java找出字符串数组中最长的公共前缀


问题 46:使用 Java 查找集合的所有子集(幂集)


给定一组不同整数的集合,返回所有可能的子集(幂集)。


例如


Input: nums = [1,2,3]Output:[[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[]]
复制代码


解决方案:使用Java查找集合的所有子集

字符串

问题 47:如何使用 Java 反转字符串? 可以在不使用任何 Java 内置方法的前提下编写方案吗?


解决方案:有很多方法,例如


  • 使用 for 循环

  • 使用递归

  • 使用字符串 Buffer


参考”使用Java反向字符串


问题 48:编写一个 Java 程序来检查两个字符串是否是变位词(Anagram)


解决方案:如果两个字符串有相同的字符但顺序不同,它们就是变位词,如 Angel 和 Angle。


有几种方法,如


  • 使用字符串方法

  • 使用 array.sort


参考“使用Java检查两个字符串是否是变位词


问题 49:使用 Java 检查字符串是否只有独立字符


解决方案:可以用以下方法


  • 使用 HashSet

  • 使用字符串的 indexOf 和 lastIndexOf 方法

  • 使用 ascii 值的字符。


完整解决方案参考“检查字符串是否只包含独立字符


问题 50:如何用 Java 检查一个字符串是否是另一个的旋转?


解决方案:假设要检查 str1 和 str2 是否相互旋转。


  1. 使用 str3=str1 + str1 创建一个新字符串

  2. 检查str3是否包含str2

  3. 如果 str3 包含 str2,那么 str2 是 str1 的旋转,否则就不是


完整方案参考“使用Java检查一个字符串是否是另一个的旋转


问题 51:如何使用 Java 中找到字符串中的重复字符?


解决方案


  1. 创建一个HashMap,字符串的字符作为键插入,字符计数就是值。

  2. 如果 Hashamap 已经包含某字符,则将其计数增加 1,否则将该字符放在 HashMap 中。

  3. 如果某字符的值大于 1,则表示它是该字符串中的重复字符。


参阅“查找字符串中的重复字符


问题 52:使用 Java 查找字符串中的第一个非重复字符


解决方案:方法有



参考“使用Java查找字符串中第一个非重复字符


问题 53:使用 Java 查找字符串的所有子字符串


解决方案


例如,如果输入为“abb”,则输出应为“a”,“b”,“b”,“ab”,“bb”,“abb”


我们使用字符串类的 subString 方法来查找所有子字符串。


参考“查找字符串的所有子字符串


问题 54:不使用任何 Java 内置方法查找字符串的长度


解决方案:本题可以使用 try catch 块来捕获 StringIndexOutOfBoundException,出现此异常时可以简单地返回 i(出现异常的索引)


参考“不使用任何Java内置方法查找字符串的长度


问题 55:使用 Java 打印字符串的所有排列


解决方案:取出字符串的第一个字符插入字符串剩余排列的每个位置,做递归。


参考“使用Java打印字符串的所有排列

二叉树

问题 56:如何遍历二叉树?


遍历二叉树有三种方法。



问题 57:编写一个算法做二叉树的层序遍历


可以使用队列数据结构。



解决方案:二叉树的层序遍历


问题 58:二叉树的螺旋顺序遍历



解决方案:二叉树的螺旋顺序遍历


问题 59:如何打印二叉树的叶节点?



上图中二叉树的叶节点是 5、30、55、70


解决方案:打印二叉树的叶节点


问题 60:如何对二叉树的叶节点计数


问题 59 中使用的二叉树的叶节点数为 4。


解决方案:对二叉树的叶节点计数


问题 61:如何打印二叉树中从根到叶的所有路径



解决方案:打印二叉树中从根到叶的所有路径


问题 62:如何在二叉树中查找节点级别


给定一个节点,需要找到节点的级别。例如:问题 61 中节点 70 的级别为 3。


解决方案:在二叉树中查找节点级别


问题 63:如何在二叉树中找到最大元素


解决方案:在二叉树中查找最大元素


问题 64:如何在二叉树中找到最低公共祖先(LCA)



解决方案:在二叉树中查找LCA


问题 65:如何对二叉树做边界遍历


如下图所示。



解决方案:二叉树的边界遍历


问题 66:如何打印二叉树的垂直和?


本题需要找到位于同一列中的节点之和。



解决方案:如何打印二叉树的垂直和


问题 67:在二叉树中找出和等于给定值的子树数量


给定二叉树和整数。本题需要找到所有节点和等于给定整数的子树数量。


解决方案:在二叉树中计算和等于给定值的子树数量


&nbsp


二叉搜索树


问题 68:什么是二叉搜索树?


二叉搜索树是一种特殊类型的二叉树,具有以下属性。


  • 小于根的节点在左子树中。

  • 大于根的节点在右子树中。

  • 没有重复节点

  • 左右子树也是二叉搜索树。


问题 69:编写算法,在二叉搜索树中插入一个节点


解决方案:在二叉搜索树中插入节点


问题 70:编写算法,删除二叉搜索树中的节点


解决方案:删除二叉搜索树中的节点


问题 71:如何在二叉搜索树中找到最小和最大元素?


解决方案:二叉搜索树的最左侧和最右侧节点分别是最小和最大节点


问题 72:如何在二叉搜索树中找到最低共同祖先(LCA)?



解决方案:在二叉搜索树中查找LCA


问题 73:在二叉搜索树中查找中序后继


解决方案:二叉搜索树的中序后继


问题 74:将已排序数组转换为平衡二叉搜索树


解决方案:将已排序的排序数组转换为平衡二叉搜索树


问题 75:将已排序的链表转换为平衡二叉搜索树


解决方案:将已排序的链表转换为平衡二叉搜索树


问题 76:使用 Java 检查二叉树是否为二叉搜索树


解决方案:使用Java检查二叉树是否为二叉搜索树


排序


问题 77:编写一个算法来实现冒泡排序


解决方案:Java中的冒泡排序


问题 78:编写一个算法来实现插入排序


解决方案:Java的插入排序


问题 79:编写一个算法来实现选择排序


解决方案:Java的选择排序


问题 80:编写合并排序算法,计算其复杂度


解决方案:Java的合并排序


问题 81:实现堆排序


解决方案:Java的堆排序


问题 82:使用 Java 实现快速排序


解决方案:使用Java实现快速排序


问题 83:使用 Java 实现希尔排序


解决方案:使用Java实现希尔排序


问题 84:使用 Java 实现计数排序


解决方案:使用Java实现计数排序


问题 85:什么是二分搜索? 写一个算法来使用二分搜索在排序数组中找到一个元素


解决方案:Java中的二分搜索算法



问题 86:编写一个算法在图中实现深度优先搜索


解决方案:Java中的深度优先搜索


问题 87:编写算法在图中实现广度优先搜索


解决方案:Java中的广度优先搜索


问题 88:从源到所有其他顶点解释 Dijkstra 算法



解决方案:Java中的Dijkstra算法


问题 89:解释 Bellman Ford 算法(最短路径算法)以找到最短距离



解决方案:Java中的Bellman ford算法


问题 90:解释 Kruskal 查找最小生成树算法



解决方案:Kruskal算法


动态编程


问题 91:给定两个字符串,找到最长的公共子串


解决方案:使用Java查找最长公共子字符串


问题 92:给定字符串 A 和 B。找出它们的最长公共子序列(LCS)


解决方案:Java中的最长公共子序列


问题 93:给定矩阵,我们需要计算 MxN 矩阵从左上到右下的所有路径。可以向下或向右移动



解决方案:计算矩阵中的所有路径


问题 94:Java 中的编辑距离问题


给定两个字符串 String1 和 String2,用给定操作以最小步数将 String1 转换为 String2。使用任何一个给定操作都会增加步数。


给定操作有:


  1. 删除:此操作允许从字符串中删除任何一个字符。

  2. 插入:此操作允许在字符串中的任何位置插入一个字符。

  3. 替换:此操作允许用字符替换字符串中的任何一个字符


解决方案:Java中的编辑距离问题


问题 95:Java 中的找零问题


给定要支付的金额和支付币种。每种币值无限供应。为了支付给定的金额,打印所有可能的货币组合


解决方案:Java中的找零问题


问题 96:到达最后一个索引的最小跳转次数


解决方案:到达最后一个索引的最小跳转次数


其它


问题 97:什么是算法以及如何计算算法的复杂度?


解决方案:如何计算算法的复杂度


问题 98:使用 Java 实现 trie 数据结构



解决方案:使用Java实现trie数据结构


问题 99:使用 Java 计算 n 阶乘末尾 0 的个数


解决方案:使用Java计算n阶乘末尾0的个数


问题 100:直方图中最大的矩形区域


解决方案:计算直方图中的最大矩形区域


问题 101:检查 Java 中表达式的平衡括号


解决方案:检查Java中表达式的平衡括号


问题 102:什么是记忆化(Memoization)



记忆化是将结果存储在数据结构中(通常是 Hashtable 或 HashMap 或数组),确保方法不会对同一输入执行多次。


Java中的记忆化示例


这都是关于数据结构和算法面试问题的问题。读者可能还喜欢下列文章:



查看英文原文:https://hackernoon.com/top-100-data-structure-and-algorithms-interview-questions-for-practice-d5071e92321e


作者介绍


Arpit Mandliya是一位 Java 博主、极客、梦想家! 网站 Java2blog.com 的作者


2019-08-19 08:0010456

评论 1 条评论

发布
用户头像
手机端不能点开里边链接吗
2022-03-04 08:54
回复
没有更多了
发现更多内容

龙蜥的朋友圈又大了!知名数据库产品服务商南大通用加入社区

OpenAnolis小助手

开源 社群

云原生训练营毕业总结

白开水又一杯

云原生

全球最大规模中文跨模态生成模型文心ERNIE-ViLG来了!

百度大脑

人工智能

应用营销策略知多少?

坚果

产品设计 1月月更

使用 Amazon Redshift ML 构建多分类模型

亚马逊云科技 (Amazon Web Services)

存储

26个主流机器学习算法的实现,获4万好评,这本机器学习宝典终于来了!

图灵教育

机器学习 代码 公式

不听话的 Container

百瓶技术

flutter 布局与组件

如何利用Spot,成本与稳定同时兼得

jinjin

spot 热池 spotmax

如何用建木CI构建/发布建木Hub节点定义版本

Jianmu

DevOps CI/CD 开源项目 发送邮件 检查系统服务

如何使用 Amazon S3 多区域访问点提高多区域应用程序的性能速度和可用性

亚马逊云科技 (Amazon Web Services)

使用 esbuild 来打包一个 React 库

CRMEB

VuePress 博客优化之添加数据统计功能

冴羽

JavaScript Vue 前端 博客 vuepress

以搭建Vuepress文档为例,展示用VSCode来远程开发

为自己带盐

vscode 1月月更 远程开发

使用 KubeSphere 管理 Amazon EKS Anywhere 集群

亚马逊云科技 (Amazon Web Services)

存储

新型数据中心的必选项:“超融合”的三重价值

脑极体

敏捷真的是开发者的绊脚石吗?

LigaAI

敏捷开发

通用数据保护条例的监管下,你的数据湖“断舍离”了吗?

亚马逊云科技 (Amazon Web Services)

存储

Amazon SageMaker Data Wrangler 简化数据准备过程,助力机器学习

亚马逊云科技 (Amazon Web Services)

存储

青藤:业务迁移到容器云上的6个注意事项

青藤云安全

美容院CRM系统解决方案

低代码小观

CRM 客户关系管理 CRM系统 客户关系管理系统 企业管理工具

手淘 Android 帧率采集与监控详解

阿里巴巴终端技术

android 性能优化 移动开发 客户端

Redis 使用 List 实现消息队列有哪些利弊?

码哥字节

redis 消息队列 Redis 6.0 1月月更

【量化】量化交易入门系列4:经典的量化交易策略(下)

恒生LIGHT云社区

量化策略 量化投资 量化交易 量化

Office2021 和Microsoft 365分不清?这样选最划算

淋雨

Office 365

活动预告 | OpenMLDB Meetup No.1

第四范式开发者社区

人工智能 机器学习 开源

【网络安全】红蓝攻防:shellcode的分析

H

网络安全 WEB安全

C++太难学,怎么破?这本书给你指点迷津!

图灵教育

c++ 编程 入门

LabVIEW感兴趣区域分析(实战篇—1)

不脱发的程序猿

机器视觉 图像处理 LabVIEW 感兴趣区域分析 ROI

workflow 之 Luigi 3.x 基本用法(qbit)

qbit

工作流 pipeline workflow 数据流

SphereEx 创始人张亮荣获『2021 年度海纳奖——分布式数据库十佳实践人物』

SphereEx

数据库 开源 ShardingSphere SphereEx 海纳奖

浅谈云上攻防——云服务器攻防矩阵

腾讯安全云鼎实验室

云原生 云上安全攻防

Java数据结构和算法百大面试题_编程语言_Arpit Mandliya_InfoQ精选文章