我听说没有比线性搜索更快的算法(对于未排序的数组),但是,当我运行这个算法(线性)时:
public static void search(int[] arr, int value){
for(int i = 0; i < arr.length; i++){
if(arr[i] == value) return;
}
}
Run Code Online (Sandbox Code Playgroud)
使用长度为1000000的随机数组,查找值的平均时间为75ns,但使用此算法:
public static void skipSearch(int[] arr, int value){
for(int i = 0; i < arr.length; i+=2){
if(arr[i] == value) return;
}
for(int i = 1; i < arr.length; i+=2){
if(arr[i] == value) return;
}
}
Run Code Online (Sandbox Code Playgroud)
我得到一个更短的平均值,68ns?
编辑:很多人说我没有做适当的基准测试,这是侥幸的,但我运行了1000000次这些功能并得到了平均值.每次运行1000000次函数时,第一个算法得到75-76ns,第二个算法得到67-69ns.
我用java System.nanoTime()
来测量它.
码:
int[] arr = new int[1000];
Random r = new Random();
for(int i = 0; i < …Run Code Online (Sandbox Code Playgroud) 我有以下代码:
var oneHeight = Math.ceil(0.012*window.innerHeight).toString()+"px";
var usboxshadow="0px "+oneHeight+" 0px rgba(0,140,255,1), 0px "+oneHeight+" 25px rgba(0,0,0,.7)";
console.log(usboxshadow);
$(".unselected").css("-webkit-box-shadow",usboxshadow);
Run Code Online (Sandbox Code Playgroud)
当我将usboxshadow输出到控制台时,我得到了我应该得到的:
0px 20px 0px rgba(0,140,255,1), 0px 20px 25px rgba(0,0,0,.7)
Run Code Online (Sandbox Code Playgroud)
(-webkit-box-shadow属性)
但是,当我用Jquery.css()检索属性时,
console.log($(".unselected").css("-webkit-box-shadow"));
Run Code Online (Sandbox Code Playgroud)
我得到了一个非常不同的结果:
rgb(0, 140, 255) 0px 20px 0px 0px, rgba(0, 0, 0, 0.701961) 0px 20px 25px 0px
Run Code Online (Sandbox Code Playgroud)
首先,每个参数中额外的0px来自何处?
第二,为什么rgba alpha(不透明度)为0.701961,何时应为0.7?
请告诉我我做错了什么.
编辑:
运行代码后,不显示未选择类的元素的box-shadow .
我有以下代码:
public class BinaryDecoder{
public static void main(String[] args){
String binNum = "110101";
int res = 0;
for (int i = 0;i<binNum.length();i++){
//res += parseDigit(binNum.charAt(i),binNum);
}
// System.out.println(res);
}
public static int parseDigit(int index, String binNum){
switch (binNum.charAt(index)){
case 0:
break;
case 1:
int val = (int) Math.pow(2,-index+binNum.length());
return val;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我收到错误:BinaryDecoder.java:30:错误:缺少return语句} ^
我可能已经解释了这个错误,但为什么我的类BinaryDecode有甚至需要一个return语句?代码还有其他问题吗?
注意:我在java中相当新,很抱歉,如果我的代码中有任何明显的错误.