java取字符串某一位 一道java面试题,20亿数字的文本排序,如何取前100?
一道java面试题,20亿数字的文本排序,如何取前100?因为这是一个Java问题,所以这是典型的TOPK问题。首先取前100个数字构建一个最小堆,然后依次从堆的顶部插入剩余的数字,同时调整堆。堆中最
一道java面试题,20亿数字的文本排序,如何取前100?
因为这是一个Java问题,所以这是典型的TOPK问题。首先取前100个数字构建一个最小堆,然后依次从堆的顶部插入剩余的数字,同时调整堆。堆中最后100个元素就是结果。空间复杂度为k,时间复杂度为nlogk
首先要知道Java中数组的length属性是用来获取数组长度的,string类的length()方法是用来获取字符串长度的,如下图所示:
其次,我们来看看具体的代码,通过“string s=”abcdefgkhj“int a=s.length()系统输出打印(“s string length:“a)”代码获取字符串s的长度,如下图所示:
第3步:运行程序,可以看到字符串s的长度是10,如下图所示:
第4步:输入“int data[]={12,23,34,45,16,78}int C=data.lengthSystem.out数据长度系统输出. println(“数据数组长度:”c)第5步:运行程序。您可以看到数据数组的长度是6,如下图所示