我有一个数字列表如下:
0,16,32,48 ......
我需要以十六进制输出这些数字:
0000,0010,0020,0030,0040 ...
我尝试过如下解决方案:
printf("%.4x",a); // where a is an integer
Run Code Online (Sandbox Code Playgroud)
但我得到的结果是:
0000,0001 0002,0003,0004 ...
我想我就在附近.任何人都可以帮忙,因为我printf在C中不太擅长.
谢谢.
我知道这是不可能的,但任何人都可以提供一个理论,为什么Java选择不支持这个?我问,因为我遇到了一个我觉得很高兴的情况.
有人可以为我解释这个命令:
cat | sed -e 's,%,$,g' | sudo tee /etc/init.d/dropbox << EOF
echo "Hello World"
EOF
Run Code Online (Sandbox Code Playgroud)
"sed"命令有什么作用?
我开发了一个具有机密业务逻辑的Perl脚本.
我必须将这个脚本交给另一个Perl编码器来在他的环境中测试它.他可能会尝试在我的程序中提取逻辑.所以我想让我的剧本很难理解.
有什么建议?
我有一个如下数组:
Array
(
[0] => Array
(
'name' => "Friday"
'weight' => 6
)
[1] => Array
(
'name' => "Monday"
'weight' => 2
)
)
我想获取该数组中的最后一个值('weight'),并使用它来对主数组元素进行排序.所以,在这个数组中,我想对它进行排序,以便'Monday'元素出现在'Friday'元素之前.
我需要提取字符串中的最后一个数字.我正试图用正则表达式和负面前瞻来做这件事,但它不起作用.这是我的正则表达式:
\d+(?!\d+)
Run Code Online (Sandbox Code Playgroud)
这些是一些字符串,只是为了给你一个想法,以及正则表达式应该匹配的内容:
ARRAY[123] matches 123
ARRAY[123].ITEM[4] matches 4
B:1000 matches 1000
B:1000.10 matches 10
Run Code Online (Sandbox Code Playgroud)
等等.正则表达式匹配数字,但所有这些数字.我不明白为什么负面的前瞻不起作用.有人在乎解释吗?
摘自算法简介
描述一个Θ(n lg n)时间算法,给定一组n个整数和另一个整数x,确定S中是否存在两个元素,其和是x.
到目前为止,这是我用Java实现的最佳解决方案:
public static boolean test(int[] a, int val) {
mergeSort(a);
for (int i = 0; i < a.length - 1; ++i) {
int diff = (val >= a[i]) ? val - a[i] : a[i] - val;
if (Arrays.binarySearch(a, i, a.length, diff) >= 0) {
return true;
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
现在我的第一个问题是:这是一个正确的解决方案吗?根据我的理解,mergeSort应该在O(n lg n)中执行排序,循环应该取O(n lg n)(n用于迭代乘以O(lg n)进行二进制搜索,得到O(2 l lg) n),所以它应该是正确的.
我的第二个问题是:有更好的解决方案吗?排序阵列必不可少?
快速背景:
$ ls src
file1 file2 dir1 dir2 dir3
Run Code Online (Sandbox Code Playgroud)
脚本:
#!/bin/bash
for i in src/* ; do
if [ -d "$i" ]; then
echo "$i"
fi
done
Run Code Online (Sandbox Code Playgroud)
输出:
src/dir1
src/dir2
src/dir3
Run Code Online (Sandbox Code Playgroud)
但是,我希望它阅读:
dir1
dir2
dir3
Run Code Online (Sandbox Code Playgroud)
现在我意识到我可以sed/awk输出删除"src /"但是我很想知道是否有更好的方法来解决这个问题.也许使用find + while-loop代替.
这就是我写的:
$Myprovince = (
($province == 6) ? "city-1" :
($province == 7) ? "city-2" :
($province == 8) ? "city-3" :
($province == 30) ? "city-4" : "out of borders"
);
Run Code Online (Sandbox Code Playgroud)
但是对于每个领域我都有价值city-4.我想使用三元运算符而不是switch/if因为我想要实验并看看它将如何完成.
这段代码有什么问题?
我有一个数组,在那个数组中我有一个看起来像show_me_160这样的数组键,这个数组键可能会改变一点,所以有时候页面可能会加载而数组键也许show_me_120,我想现在可以只是字符串匹配数组键直到最后一次,_以便我可以检查最后一个下划线后的值是多少?