标签: minmax

有没有办法轻松处理返回std :: pairs的函数?

C++ 11具有std::minmax_element返回一对值的函数.然而,这对于处理和读取来说是相当混乱的,并且产生一个额外的,后来无用的变量来污染范围.

auto lhsMinmax = std::minmax_element(lhs.begin(), lhs.end());
int &lhsMin = *(lhsMinMax.first);
int &lhsMax = *(lhsMinmax.second);
Run Code Online (Sandbox Code Playgroud)

有一个更好的方法吗?就像是:

int lhsMin;
int lhsMax;
std::make_pair<int&, int&>(lhsMin, lhsMax).swap(
    std::minmax_element(lhs.begin(), lhs.end()));
Run Code Online (Sandbox Code Playgroud)

c++ tuples minmax c++11 std-pair

33
推荐指数
3
解决办法
2171
查看次数

将std :: minmax与一对进行比较

标准算法minmax可以针对单个值进行比较.但是,minmax算法返回值无法与一对值进行比较:

#include <algorithm>
#include <utility>

template<class T1, class T2>
constexpr auto make_cref_pair(T1&& t1, T2&& t2)
{
    return std::pair<T1 const&, T2 const&>(std::forward<T1>(t1), std::forward<T2>(t2));
}

int main()
{
    static_assert(std::min(2, 1) == 1); // OK
    static_assert(std::max(2, 1) == 2); // OK
    //static_assert(std::minmax(2, 1) == std::make_pair(1, 2)); // ERROR, const int& vs int pair comparison
    static_assert(std::minmax(2, 1) == std::pair<const int&, const int&>(1, 2)); // OK
    static_assert(std::minmax(2, 1) == make_cref_pair(1, 2)); // OK
}
Run Code Online (Sandbox Code Playgroud)

实例

原因是make_pair(2, 1)返回a …

c++ algorithm minmax c++14

11
推荐指数
2
解决办法
556
查看次数

Alpha-beta prunning with transposition table,迭代加深

我正在尝试使用转置表来实现alpha-beta min-max prunning增强功能.我用这个伪代码作为参考:

http://people.csail.mit.edu/plaat/mtdf.html#abmem

function AlphaBetaWithMemory(n : node_type; alpha , beta , d : integer) : integer;
    if retrieve(n) == OK then /* Transposition table lookup */
        if n.lowerbound >= beta then return n.lowerbound;
        if n.upperbound <= alpha then return n.upperbound;
        alpha := max(alpha, n.lowerbound);
        beta := min(beta, n.upperbound);
    if d == 0 then g := evaluate(n); /* leaf node */
    else if n == MAXNODE then
        g := -INFINITY; a := alpha; /* save original alpha value */
        c …
Run Code Online (Sandbox Code Playgroud)

algorithm chess artificial-intelligence minmax alpha-beta-pruning

10
推荐指数
1
解决办法
8336
查看次数

CSS minmax():优先考虑最大值

minmax: 如果 max < min,则忽略 max,并将 minmax(min,max) 视为 min..

我想做类似的事情

grid-template-columns: 1fr minmax(50%, 70vmin) 1fr;
Run Code Online (Sandbox Code Playgroud)

我不希望该列超过70vmin。根据规范,在70vmin恰好小于 的情况下50%,它选择50%作为列大小,这是我不想要的。是否有可能以某种方式扭转这种行为?

css grid minmax css-grid

8
推荐指数
1
解决办法
2053
查看次数

使用jQuery获取具有属性最大值的数组中的元素

我有一个自定义JavaScript对象的数组,它有一个名为的属性order.我有一个这个对象的数组,我想得到具有最高"顺序"的项目.

由于我对jQuery相对较新,并且来自C#背景,这是我非常欣赏LINQ的实例之一:)

无论如何,长话短说,我已经检查了以下链接,但他们只返回值而不是数组元素本身的引用...所以有一点帮助改变它返回元素将不胜感激.

来自元素数组的jQuery min/max属性

具有来自一组元素的最大高度的元素

有问题的自定义对象(我有一个数组)如下:

var severity = function (key, value, order) {
    this.key = key;
    this.value = value;
    this.order = order;
};
Run Code Online (Sandbox Code Playgroud)

javascript arrays jquery minmax

7
推荐指数
1
解决办法
9115
查看次数

如何找到给定正则表达式生成的最小,最大长度字符串?

如何在正则表达式下找到最小和最大长度?

例如

[1-9]?[0-9]
Run Code Online (Sandbox Code Playgroud)

这个正则表达式可以生成最小1(0或1 0r 2 ....或9)和最大字符串长度2(10或11或12或...... 19或20或21 .... .......或99)

同样,任何人都可以提供一个函数,可以计算正则表达式的最小和最大长度吗?哪个可以在正则表达式下输入?

^[a-zA-Z0-9][a-zA-Z0-9.-]{0,64}[a-zA-Z0-9]$
^[a-zA-Z0-9._-]{1,255}$
^[a-zA-Z0-9 !#$'()*+,./:;=?@\\^_`~-]{1,30}$
^[]a-zA-Z0-9 !#$'()*+,./:;=?@[^_`{|}~-]{0,50}$
^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])$
Run Code Online (Sandbox Code Playgroud)

python regex min maxlength minmax

7
推荐指数
2
解决办法
1325
查看次数

Clickhouse:如何在clickhouse中使用“数据跳过索引”和“数据跳过索引的操作”功能?

我正在使用Data Skipping Indexesclickhouse 中的该功能,但我对其用法感到困惑。如果我在创建表时添加数据跳过索引,如下所示:

CREATE TABLE MyTable
(
    ...
    INDEX index_time TimeStamp TYPE minmax GRANULARITY 1
)
ENGINE =MergeTree()
...
Run Code Online (Sandbox Code Playgroud)

当我使用TimeStamp过滤条件查询时,“index_time”有效。但是,如果我在创建表时没有添加索引,或者,我添加了具有Manipulations With Data Skipping Indices如下功能的索引:

ALTER TABLEE MyTable ADD INDEX index_time TimeStamp TYPE minmax GRANULARITY 1
Run Code Online (Sandbox Code Playgroud)

那么索引'index_time'不起作用。

我的数据库正在生产中运行,因此我无法重新创建表。我必须使用第二种方法。谁能解释为什么它不起作用或者我以错误的方式使用该功能?

minmax secondary-indexes clickhouse

7
推荐指数
1
解决办法
5731
查看次数

Python字典键作为数字集

我想在python中构建一个字典,其中的键是0到1之间的最小/最大值对.例如:

myDict = {(0, .5): 'red', (.5, 1): 'orange'}
Run Code Online (Sandbox Code Playgroud)

我希望能够调用字典中的条目与多家集合[最小值,最大值).

>>> myDict[.464897]
'red'
>>> myDict[.5]
'orange'
Run Code Online (Sandbox Code Playgroud)

我觉得可能有一个很好的,简单的方法来做到这一点.然而,这是难以捉摸的,因为我仍然在我的python纸尿裤.

python dictionary key minmax

6
推荐指数
1
解决办法
2748
查看次数

从MySQL中的一部分表中选择min min max和max min值

我想从另一个table2中为table1中的每个值选择min max和max min值.样本输入

table2
name, value,y
f1, .01,.04
f1,.02,.05
f1,.05,.06
f1,.45,.07
f2,.03,.09
f2,.05,.02

table1
name, value
f1, .04
f2,.04

expected output
table3
name, value,min_max-value,max_min-value,y(min_max-value),y(max_min-value)
f1, .04,.02,.05,.05,.06
f2,.04,.03,.05,.09,.02
Run Code Online (Sandbox Code Playgroud)

mysql max minmax

6
推荐指数
1
解决办法
309
查看次数

对于opencv minMaxLoc,cv :: mask应该如何?

简单的问题,但无法弄清楚.

normaly它的void minMaxLoc(InputArray src,double*minVal,double*maxVal = 0,Point*minLoc = 0,Point*maxLoc = 0,InputArray mask = noArray())但是掩码是怎么样的?

这就是我想要的:它是一维Mat(只有一行),我想要Mat(maxRowGChnnl)的间隔(低于upperBorder)的minMax位置.

int lowerBorder,upperBorder;
lowerBorder = 30;
upperBorder = 100;
cv::minMaxLoc(maxRowGChnnl.row(0),&minValue,&maxValue,&minLoc,&maxLoc,(lowerBorder,upperBorder));
Run Code Online (Sandbox Code Playgroud)

这是maxRowGChnnl大小:

maxRowGChnnl    {flags=1124024325 dims=2 rows=1 ...}    cv::Mat
flags   1124024325  int
dims    2   int
rows    1   int
cols    293 int
Run Code Online (Sandbox Code Playgroud)

上面的代码支持:

OpenCV Error: Assertion failed ((cn == 1 && (mask.empty() || mask.type() == CV_8
U)) || (cn >= 1 && mask.empty() && !minIdx && !maxIdx)) in unknown function, fil
e ..\..\..\src\opencv\modules\core\src\stat.cpp, line 787
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

c++ opencv minmax

6
推荐指数
2
解决办法
4855
查看次数