我知道有很多这样的事情,但要么他们不能递归地工作,要么他们是巨大的.
这就是我得到的:
find . -name "*.so" -exec mv {} `echo {} | sed s/.so/.dylib/` \;
Run Code Online (Sandbox Code Playgroud)
当我运行查找部分时,它会给我一个文件列表.当我运行sed部分时,它用.dylib替换任何.so.当我一起运行它们时它们不起作用.
我用echo替换了mv,看看发生了什么:
./AI/Interfaces/C/0.1/libAIInterface.so ./AI/Interfaces/C/0.1/libAIInterface.so
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),所以它应该是正确的.
我的第二个问题是:有更好的解决方案吗?排序阵列必不可少?
我们现在使用VS2003(目标为.Net 1.1),我们想要升级到VS2008,但我想知道新的.Net目标应该是什么?
我应该将目标保留为.Net 1.1(非常旧,未安装在所有计算机上)或升级吗?
如果我升级 - 是2.0恩斯?或者升级到最新的3.5(我们的客户使用Windows XP,Vista和Windows 7)
如果我将我的应用程序定位到2.0,并且用户有3.5,会发生什么?用户应该在.Net 3.5上安装.Net 2.0吗?即使安装旧版本"以上"新版本,它可以并排工作吗?或者应用程序可以正常运行,因为3.5"包括"2.0?
谢谢,
Atara
...
谢谢你们.我想我将定位到2.0,覆盖我的大多数客户,如果客户没有安装任何.Net,我会要求他安装最新版本(3.5及更高版本4)
您能否确认.Net 3.5刚刚添加了更多的程序集到2.0,并且不包含2.0程序集的错误修复程序?
(我的用户的计算机技能水平不高,安装越少越好)
...更新:查看我的问题 - Microsoft .NET兼容性
谢谢你的回答.
Atara
我是代码点火器的新手.我正在按照http://www.codeignitor.com/user_guide/libraries/validation.html上的表单验证教程进行操作
我发现我在视图中输入的内容过多,无法重新填充表单.例如,这是我的一个INPUT字段的样子:
<input type="text" name="email" value="<?=$this->validation->email ? $this->validation->email : $array_db_values['email'] ?>" />
Run Code Online (Sandbox Code Playgroud)
基本上,当表单首次加载时,它应该显示数据库中的值.如果用户更改了值并且验证失败,则表单应该发布错误提交的值.
代码点火器是否有一种"更清洁"的方式来呈现这种输出?否则,我将在我的控制器中执行以下操作:
$array_db_values = getdbresults();
if($_POST['submit'])
foreach($_POST as $key=>$val)
$array_db_values[$key] = $val;
Run Code Online (Sandbox Code Playgroud)
这样,如果存在回发数据,它将始终覆盖数据库值.
然后我视图中的输入字段可以简单地是:
<input type="text" name="email" value="<?=$array_db_values['email'] ?>" />
Run Code Online (Sandbox Code Playgroud)
是否有更好的/本地CI方式来处理这种情况?
例如,给定字符串" abc fghi bc kl abcd lkm abcdefg ",该函数应返回字符串" abcd "并且计数为2.
AO(n ^ 2)解决方案似乎很容易,但我正在寻找更好的解决方案.
编辑:如果没有比O(n ^ 2)更好的方法,那么哪种方法最好的表现.
我已经知道8086汇编语言,现在我通过阅读MIPS汇编语言编程和MIPS Run书籍来学习MIPS汇编语言,但是我从未停止思考汇编语言的编码标准/最佳实践。我想每天让我成为一个更好的开发人员,然后想知道这一点来提高自己。我如何才能了解有关汇编编码标准和最佳实践的更多信息?
我正在写一个非常简单的bbcode解析.如果我想要替换hello i'm a [b]bold[/b] text,我已成功替换此正则表达式
r'\[b\](.*)\[\/b\]'
有了这个
<strong>\g<1></strong>
得到hello, i'm a <strong>bold</strong> text.
如果我有两个或更多相同类型的标签,则会失败.例如:
i'm [b]bold[/b] and i'm [b]bold[/b] too
给
i'm <strong>bold[/b] and i'm [b]bold</strong> too
如何解决问题?谢谢
如果我编码这个
std::map<int, char> example = {
(1, 'a'),
(2, 'b'),
(3, 'c')
};
Run Code Online (Sandbox Code Playgroud)
然后g ++对我说
deducing from brace-enclosed initializer list requires #include <initializer_list>
in C++98 ‘example’ must be initialized by constructor, not by ‘{...}’
Run Code Online (Sandbox Code Playgroud)
这让我很烦,因为构造函数是运行时的,理论上可能会失败.
当然,如果确实如此,它将很快失败并且应该一直这样做,所以我应该快速找到并纠正问题.
但是,我仍然很好奇 - 无论如何在编译时初始化地图,矢量等?
编辑:我应该说我正在为嵌入式系统开发.并非所有处理器都具有C++ 0x编译器.最受欢迎的可能是,但我不想遇到问题并且必须维护2个版本的代码.
至于Boost,我尚未决定.他们在嵌入式系统中使用他们的有限状态机类是多么的愚蠢,所以这就是我在这里编写的事件/事件/状态/ Fsm类.
叹了口气,我想我最好安全地玩,但我希望这个讨论对其他人有帮助.
为什么一个进程想要从Win32API调用DuplicateHandle,并从另一个进程获取它而不是只获取某个对象本身的句柄?
调用DuplicateHandle或其他东西有什么好处吗?
我有一个问题,我允许用户选择criterea来订购List
让我们说我的名单被称为
List<Cars> AllCars = new List<Cars>;
allCars = //call the database and get all the cars
Run Code Online (Sandbox Code Playgroud)
我现在想订购这份清单
allCars.orderBy(registrationDate)
Run Code Online (Sandbox Code Playgroud)
我理解上面的内容不起作用,但我没有任何关于我应该放在括号中的内容.