小编use*_*778的帖子

使用XSLT将Muenchian分组应用于简单的XML

Muenchian分组如何在细节上工作?

我有一个从数据库生成的简单XML文档:

<CLIENTS>
    <CLIENT>
       <NAME>John</NAME>
       <ACCOUNT_NUMBER>1424763562761</ACCOUNT_NUMBER>
       <LAST_USED>2012-10-03</LAST_USED>
       <AMOUNT>5000</AMOUNT>

    </CLIENT>
    <CLIENT>
       <NAME>John</NAME>
       <ACCOUNT_NUMBER>543667543732</ACCOUNT_NUMBER>
       <LAST_USED>2012-10-02</LAST_USED>
       <AMOUNT>10000</AMOUNT>
    </CLIENT>
       ...
Run Code Online (Sandbox Code Playgroud)

我想按名称节点分组.我怎样才能获得以下所需的输出?

<ClIENTS>
    <CLIENT>
        <NAME>John</NAME>
        <ACCOUNT>
           <ACCOUNT_NUMBER>1424763562761</ACCOUNT_NUMBER>
           <LAST_USED>2012-10-03</LAST_USED>
           <AMOUNT>5000</AMOUNT>
        </ACCOUNT>
        <ACCOUNT>
           <ACCOUNT_NUMBER>543667543732</ACCOUNT_NUMBER>
           <LAST_USED>2012-10-03</LAST_USED>
           <AMOUNT>10000</AMOUNT>
        </ACCOUNT>
       ....
</CLIENTS>
Run Code Online (Sandbox Code Playgroud)

xml xslt aggregate muenchian-grouping

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

c ++中的通用二进制搜索

我想编写一个模板二进制搜索算法,它可以使用仲裁比较器搜索模板类型QList中的模板类型元素,如下所示:

template<typename T,typename compare_less>
static int binary_search(QList<T>* list, T target) {
    int low = 0;
    int high = list->count()-1;
    while (low <= high) {
        int middle = low + (high - low)/2;
        if (compare_less(*target, *list[middle]))
            high = middle - 1;
        else if (compare_less(*list[middle],*target))
            low = middle + 1;
        else
            return middle;
    }
    return low;
Run Code Online (Sandbox Code Playgroud)

}

现在,我如何正确实现这一点,以使其适用于QDateTime*模板参数?我想调用这样的函数:

int index = binary_search<QDateTime*, ???>(dateTimeList,date);
Run Code Online (Sandbox Code Playgroud)

其中dateTimeList的类型为QList,date的类型为QDateTime*,我真的不知道在问号位置写什么.

有人可以帮我正确实现算法,并告诉我如何用这些参数调用算法?

c++ binary search templates

0
推荐指数
1
解决办法
2544
查看次数

标签 统计

aggregate ×1

binary ×1

c++ ×1

muenchian-grouping ×1

search ×1

templates ×1

xml ×1

xslt ×1