给出以下HQL查询:
FROM
Foo
WHERE
Id = :id AND
Bar IN (:barList)
Run Code Online (Sandbox Code Playgroud)
我:id使用Query对象的setInteger()方法设置.
我想设置:barList一个List对象,但看看Hibernate文档和方法列表,我看不出明显的选择使用哪个.有任何想法吗?
我最近被问到这个面试问题:
您将获得一个几乎已排序的数组,因为每个
N元素可能被错放的k位置不超过正确排序顺序的位置.找到一种节省空间和时间的算法来对数组进行排序.
我有一个O(N log k)解决方案如下.
让我们表示arr[0..n)从索引0(包括)到N(不包括)的数组元素.
arr[0..2k)
arr[0..k)它们处于最终的排序位置......arr[k..2k)可能仍然被错放了k!arr[k..3k)
arr[k..2k)它们处于最终的排序位置......arr[2k..3k)可能仍然被错放了karr[2k..4k)arr[ik..N),然后你就完成了!
2k剩下的元素少于其他元素,那么最后一步可能比其他步骤便宜在每个步骤中,您对大多数2k元素进行排序,在每个步骤O(k log k)结束时将至少k元素放在最终排序位置.有O(N/k)步骤,所以整体复杂性O(N log k).
我的问题是:
O(N log k)最佳的?这可以改进吗?如何在表单中发布多个选择的值?当我点击提交时,没有发布任何选定的值.
<form id="form" action="" method="post">
<div>
<select id="inscompSelected" multiple="multiple" class="lstSelected">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<input type="submit" value="submit">
</div>
</form>
Run Code Online (Sandbox Code Playgroud) 我在linux上运行tesseract-ocr引擎时遇到问题.我已经下载了RUS语言数据并将其放到tessdata目录(/ usr/local/share/tessdata).当我尝试使用命令运行tesseract时tesseract blob.jpg out -l rus,它会显示错误:
Error opening data file /usr/local/share/tessdata/eng.traineddata
Please make sure the TESSDATA_PREFIX environment variable is set to the parent directory of your "tessdata" directory.
Failed loading language eng
Tesseract couldn't load any languages!
Could not initialize tesseract.
Run Code Online (Sandbox Code Playgroud)
根据编译指南,我曾经export TESSDATA_PREFIX='/usr/local/share/'
指向我的tessdata目录.也许我应该编辑任何配置文件?Tesseract尝试加载'eng'数据文件而不是'rus'.
我刚开始学习Google Web Toolkit(GWT).如何在GWT应用程序中创建不同的HTML页面?
例如,我想为书店创建一个应用程序.在这个应用程序中,我将有三页:
当然可能还有其他页面,比如用户的详细信息,添加新书等等.那么,在GWT中制作不同页面的最佳方法是什么?如何在页面之间进行导航?有没有例子或教程?或者,当我可以在一个页面中创建整个应用程序时,我是否还需要创建不同的页面?
我可以向信号处理程序提供/传递任何参数吗?
/* Signal handling */
struct sigaction act;
act.sa_handler = signal_handler;
/* some more settings */
Run Code Online (Sandbox Code Playgroud)
现在,处理程序看起来像这样:
void signal_handler(int signo) {
/* some code */
}
Run Code Online (Sandbox Code Playgroud)
如果我想做一些特殊的事情,即删除临时文件,我可以将这些文件作为参数提供给这个处理程序吗?
编辑0:谢谢你的回答.我们通常避免/不鼓励使用全局变量.在这种情况下,如果你有一个庞大的程序,在不同的地方可能会出现问题,你可能需要进行大量的清理工作.为什么API以这种方式设计?
我是大学生,我们的任务是创建一个搜索引擎.当添加到边界时,我很难生成分配给每个URL的唯一ID.我曾尝试使用SHA-256哈希算法以及Guid.这是我用来实现guid的代码:
public string generateID(string url_add)
{
long i = 1;
foreach (byte b in Guid.NewGuid().ToByteArray())
{
i *= ((int)b + 1);
}
string number = String.Format("{0:d9}", (DateTime.Now.Ticks / 10) % 1000000000);
return number;
}
Run Code Online (Sandbox Code Playgroud) 我写了这个小程序:
class Program
{
static void Main(string[] args)
{
Thread t = new Thread(WriteX);
t.Start();
for (int i = 0; i < 1000; i++)
{
Console.Write("O");
}
}
private static void WriteX()
{
for (int i = 0; i < 1000; i++)
{
Console.Write(".");
}
}
}
Run Code Online (Sandbox Code Playgroud)
我跑了大约五十次,控制台上的第一个字符总是"O".这对我来说很奇怪,因为t线程首先启动然后主要继续.
这有什么解释吗?
我记得在Oracle中可以根据函数进行索引,例如SUBSTRING(id,1,8).
MySQL支持这个吗?如果没有,有没有其他选择?