我在网站上有一个签名小程序.因此,将出现Java安全性对话框,并且用户需要在applet工作之前向applet授予权限.我想要做的是:
问题是,只要applet嵌入页面,安全对话框就会出现.我可以延迟嵌入,但是没有办法从applet本身检查它的权限,因为它需要在加载之前完成.
也许我可以加载一个无形运行的第二个普通applet,并检查权限.但是我该怎么做呢?是否有任何Java类可以检查客户端是否信任证书?
谢谢.
在Java更新常见问题中,它提到了一个名为Java Kernel的新东西:http://java.sun.com/javase/6/6u10faq.jsp#JKernel
它基本上允许您只安装最小的组件来运行Java程序.我想在我的网络小程序中使用它,这样没有Java的人就可以快速启动和运行.
但是,我无法在任何地方找到任何信息.没有示例或教程说明如何使用它.这仍然存在或者我错过了什么吗?
我有一个系统,我需要计算每个变量的可能值范围(我不需要找到系统的解决方案).以下是示例系统的说明:
每条蓝线都是一个节点(由它上面的标签命名),灰线是节点之间的边缘.给出了初始约束:例如,边缘BC可以是0和1之间的任何实数,并且边缘BE可以是大于或等于9的任何数.节点不能跨越其他节点.将它们想象成可以伸展和缩回的金属条是有帮助的,推动蓝色板周围.
我的目标是为每条边计算它们的最小和最大长度.起始约束设置了系统,但最终结果可能比它们更受限制.例如,边缘DF的起始最小值/最大值为(2,∞),但是你可以看到它实际上不能短于3,因为收缩它将D拉入E,E拉向F,而EF有一个至少为3.最终的结果就是这个,我相信:
需要注意的是,我需要一种可以扩展到数十万个节点的算法,这个节点比这个例子更密集.它不能以指数方式增加运行时间,因为我还必须运行这个算法数十万次.
我尝试了一种方法,它给出了一些更多约束值,但不是最受约束的值.为了使方法可视化,我基本上尽可能地将所有板拉到左边,然后记录每个板的最大位置.然后我做了同样的事情,将它们拉到右边.然后,对于每个边,我只是找到每个板的值之间的差异.此方法非常有效地找到最大值,但问题是当您遇到类似于此示例的情况时,其中CD被BC和DE"锁定"到BE.它不能是6,因为系统只允许它比9短.我需要一种方法来找到真正的最小值7.我的方法不捕获"锁定"关系:当你拉C全部在左边的路上,BC是0,当你把D一直拉到右边时,DE是0,但如果CD是6,它们不能都是0.
在这个例子中,很容易看出CD受到BE的约束,但在实践中,系统会比例子更密集和更大,并且发现这种情况似乎并非易事.如果该方法涉及在本地搜索它,我担心它会扩展得很差,但这可能是唯一的方法.
如果将其建模为线性规划问题(AB + BC = AC,AB> 1等),则可能会利用该系统的某些属性:约束的所有系数均为1,并且约束中只有加法和减法.
有没有人对如何解决这个问题有任何建议?或者对我应该实际希望的运行时间复杂程度有任何见解?谢谢!
algorithm graph-theory constraints linear-programming constraint-programming
假设我有以下系统说明的一些变量和约束:
灰线可以拉伸和收缩它们顶部的范围给定的量。蓝线只是端点,显示了灰线如何相互作用。
我的目标:我想使用线性规划来均匀地最大化灰线的大小,如图所示。你可以想象带有弹簧的灰色线条,它们都同样向外推。一个糟糕的解决方案是将所有蓝线尽可能推向一侧。请注意,此描述中有一点余地,并且可能有多种解决方案 - 我所需要的只是让它们合理均匀,并且不要让一个值最大化压扁其他所有内容。
我尝试的目标函数只是最大化线条大小的总和:
maximize: (B - A) + (C - B) + (C - A) + (D - C) + (E - B) + (E - D) + (F - E) + (F - D) + (F - A)
Run Code Online (Sandbox Code Playgroud)
我很清楚这不是一个好的解决方案,因为这些项相互抵消,并且一条线上的增加只会在另一条线上减少相同的数量,因此目标永远不会偏向于在变量之间均匀分布最大化。
我还尝试将每条线与其中间可能范围的距离最小化。对于 line B - A,其范围内的中间值(1,3)是2。这是第一学期的目标:
minimize: |(B - A) - 2| + ...
Run Code Online (Sandbox Code Playgroud)
为了实现绝对值,我将术语替换为U并添加了额外的约束:
minimize: U + ...
with: U <= (B - A - 2)
U <= -(B …Run Code Online (Sandbox Code Playgroud) algorithm mathematical-optimization linear-programming or-tools
我正在写一些性能很重要的代码.在其中的一部分中,我必须将大量预先计算的数据与动态值进行比较.目前,我将预先计算的数据存储在.cs文件中的巨型数组中:
Data[] data = { /* my data set */ };
Run Code Online (Sandbox Code Playgroud)
数据集大约为90kb,或大约13k个元素.我想知道这样做是否有任何缺点,而不是从外部文件中加载它?我不完全确定C#是如何在内部工作的,所以我只是想知道我可能遇到的任何性能问题.
algorithm ×2
applet ×2
java ×2
.net ×1
arrays ×1
c# ×1
certificate ×1
constraints ×1
graph-theory ×1
installation ×1
optimization ×1
or-tools ×1
performance ×1
security ×1