问题标签 [lower-bound]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
code-analysis - while循环的上下界
我被困在过去一篇关于嵌入式软件课程的论文中的一个问题上。
该问题提出以下问题:
我认为上限是:n<=bmax 但我不明白如何计算下限。任何人都可以帮忙吗?
谢谢
approximation - 用斯特林近似计算下限
我们在学校有这个练习,我们要计算算法的下限。我们知道下限是:Log_6((3*n)! / n!^3) 我们将使用斯特林近似来近似 n!。当应用斯特林近似时,我们得到:
log_6((sqrt(2*pi*3*n)*((3*n)/e)^(3*n) * e^alpha)/(sqrt(2*pi*n)*(n/e) ^n * e^alpha)^3)
现在我们的问题是,每次我们尝试用简单的对数属性扩展这个公式,例如 log(a/b) = log(a)-log(b), log(a*b) = log(a)+log( b), log(a^b) = b*log(a) 最后对于 sqrt log(sqrt(a)) = log(a^1/2) = 1/2 * log(a),我们得到一个结果支配表达式的位置将是 n*log(n) * 常量。现在我们从老师那里知道我们必须找到一个线性下限,所以这是错误的。
我们已经使用了 2 天,即将放弃。有人可以帮助我们吗?
提前致谢!
algorithm - 找到中位数的下限
假设我们有一个包含 n 个数字的列表,并且我们想要找到一个大于或等于中位数的数字。我想了解这个问题的最坏情况复杂性的下限。我知道找到中位数的下限是 3(n-1)/2。但是当我们要找一个大于或等于中位数的数时会不会一样。
algorithm - O(n^2) 的渐近下界
P 中是否存在已证明渐近下界为 O(n^2) 或更高的问题?(n 是问题实例可以表示的位数)。这不是作业问题,只是好奇。
gcc - 使用较新的 gcc 调用“lower_bound”没有匹配的函数
我在使用较新版本的 gcc 的系统上编译使用 std::lower_bound 的代码时遇到了一些问题。根据我的测试,4.1 有效,但 4.6 失败。
这是相关的代码片段:
我看到的错误是:
有人对如何解决这个问题有想法吗?
c++ - Lower_bound 抛出“错误 C2914:'std::lower_bound':无法推断模板参数,因为函数参数不明确”
在尝试自学 STL 时,我编写了以下课程:
运算符<定义为:
为什么这不起作用:
它抛出:
我可以使用一个重量为 50 的假人来解决这个问题,然后调用 lower_bound:
但它显然不是很优雅,有人可以帮我让 compareWeight 工作吗?此外,在这种情况下,任何关于最佳方法的建议都会很棒。抱歉,请不要使用 Boost 或 C++11。
c++ - COIN BCP框架中如何获取全局下界
我目前正在使用 COIN OR BCP 框架研究分支和价格 (BAP) 算法。这是一个不错的框架,但有点旧,文档也不好。我希望这里有人能够回答我的问题。
我的 BAP 算法运行良好,但我注意到,我认为是全局下限,实际上只是分支和价格树中特定节点的下限。有时我会得到一些负面的差距:)
因此,我深入研究了框架的内部部分,寻找如何检索全局有效的下限。奇怪的是,这似乎不是框架的功能!
我需要的是在我的树类(从 BCP_tm_user 派生)中获取下限,以便报告解决方案差距。
c++ - C std::lower_bound,使用重载运算符作为二元谓词comp?
我正在处理一项任务,我们必须对可以使用向量相互交互的多副牌进行编程(例如,从主牌组中移除一张牌并将其添加到另一张牌中)。赋值声明我们必须使用卡片结构中的重载“小于”运算符,通过将其与 std::lower_bound 函数组合来确定卡片的正确顺序。到目前为止,这就是我所拥有的:
Card 结构的重载“小于”运算符如下。它根据枚举中的预定顺序比较卡片的等级和花色:
任何帮助是极大的赞赏。赋值声明我们必须使用重载运算符。我们不允许自己创建一个简单的“IsSmallerThan()”方法。
非常感谢。
编辑:忘记标记问题。评论中的额外信息。
c++ - 将 lower_bound 与向量一起使用时出错>
我有一个缓存的实现,它被定义为这样;
被TEntryPair
定义为;
将新记录插入缓存时,我使用以下方法在缓存std::lower_bound
中找到插入排序的正确位置;
新条目是根据std::string
参数插入排序的,第二个值基本上是元数据。
std::lower_bound
在尝试插入新记录时,我定义了以下运算符;
现在这一切都很好,直到我不得不将定义更改为TEntryPair
以下内容;
有人可以解释为什么我定义的运算符在使用时无法使用std::pair<std::string, double>
,而不是std::pair<std::string, FILETIME>
?
编译器给出以下错误;
顺便说一句,我可以定义以下内容并编译/运行代码而不会出现任何错误;
似乎只是“基本”类型有问题?
c++ - C ++:映射,键的前一项
我有这张地图:map<int, int > items
。给定一个键,我希望此映射返回与键对应的项目(如果存在),否则映射返回键立即小于给定键的项目。例如,如果我有:
对于 key=15,我希望地图返回值为 18 的项目,否则对于 key=9,我希望地图返回值为 10 的项目。
我还没有找到适合这种情况的功能。但我尝试过这种方式:
这可以按我的意愿工作,在地图中输入一个最小值items[0]=0
作为默认值,但我知道itlow--;
这不是好的编程。我能怎么做?谢谢大家。