Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将[:]python更改为c++; 我有一个Python程序,我正在转换它,以便我可以在C++中使用它,我在Python版本中使用了下面的代码,[]:运算符,我想知道C++中的等价物,或者C++中可以做的与[]:这基本上是创建列表的副本,以便不编辑原始列表 def noTwoNumbersAlike(列表): list.sort() 对于范围(1,len(列表))中的i: 如果(列表[i-1]==列表[i]): 返回错误 返回真值 def检查线(电路板): 长度=长度(板) errorFound=False 对于范围内的x(长度): 如果(不包括编号salike(板[x][:]): 返回错误 临时列表=[] 对于范围内的y(长度): 临时名单。附加(董事会[x][y]) 如果(非Wonnumbersalike(临时列表)): 返回错误 返回真值 > p>这完全取决于你用什么数据结构来存储列表中的C++。如果您使用的是向量(它将您锁定为列表的单一数据类型),那么您可以执行以下操作: #include <vector> using std::vector; int main() { vector<int> first; // populate first vector<int> second(first); // Now second is a copy of first } #包括 使用std::vector; int main(){ 向量优先; //先填充 向量第二(第一); //现在第二个是第一个的副本 }_C++_Python_Sorting - Fatal编程技术网

如何将[:]python更改为c++; 我有一个Python程序,我正在转换它,以便我可以在C++中使用它,我在Python版本中使用了下面的代码,[]:运算符,我想知道C++中的等价物,或者C++中可以做的与[]:这基本上是创建列表的副本,以便不编辑原始列表 def noTwoNumbersAlike(列表): list.sort() 对于范围(1,len(列表))中的i: 如果(列表[i-1]==列表[i]): 返回错误 返回真值 def检查线(电路板): 长度=长度(板) errorFound=False 对于范围内的x(长度): 如果(不包括编号salike(板[x][:]): 返回错误 临时列表=[] 对于范围内的y(长度): 临时名单。附加(董事会[x][y]) 如果(非Wonnumbersalike(临时列表)): 返回错误 返回真值 > p>这完全取决于你用什么数据结构来存储列表中的C++。如果您使用的是向量(它将您锁定为列表的单一数据类型),那么您可以执行以下操作: #include <vector> using std::vector; int main() { vector<int> first; // populate first vector<int> second(first); // Now second is a copy of first } #包括 使用std::vector; int main(){ 向量优先; //先填充 向量第二(第一); //现在第二个是第一个的副本 }

如何将[:]python更改为c++; 我有一个Python程序,我正在转换它,以便我可以在C++中使用它,我在Python版本中使用了下面的代码,[]:运算符,我想知道C++中的等价物,或者C++中可以做的与[]:这基本上是创建列表的副本,以便不编辑原始列表 def noTwoNumbersAlike(列表): list.sort() 对于范围(1,len(列表))中的i: 如果(列表[i-1]==列表[i]): 返回错误 返回真值 def检查线(电路板): 长度=长度(板) errorFound=False 对于范围内的x(长度): 如果(不包括编号salike(板[x][:]): 返回错误 临时列表=[] 对于范围内的y(长度): 临时名单。附加(董事会[x][y]) 如果(非Wonnumbersalike(临时列表)): 返回错误 返回真值 > p>这完全取决于你用什么数据结构来存储列表中的C++。如果您使用的是向量(它将您锁定为列表的单一数据类型),那么您可以执行以下操作: #include <vector> using std::vector; int main() { vector<int> first; // populate first vector<int> second(first); // Now second is a copy of first } #包括 使用std::vector; int main(){ 向量优先; //先填充 向量第二(第一); //现在第二个是第一个的副本 },c++,python,sorting,C++,Python,Sorting,同样,vectors将您锁定为一种类型,但只要您用于存储列表的内容有可能是一个复制构造函数(如果您使用的是某种类型的类),如果您使用的是标准数组,那么您就必须手动复制。尝试此代码 #include<iostream> #include<vector> using namespace std; template<class T> void sort_vector(vector<T> &v) { if (v.size()!=0)

同样,vectors将您锁定为一种类型,但只要您用于存储列表的内容有可能是一个复制构造函数(如果您使用的是某种类型的类),如果您使用的是标准数组,那么您就必须手动复制。

尝试此代码

#include<iostream>
#include<vector>
using namespace std;
template<class T>
void sort_vector(vector<T> &v)
{
    if (v.size()!=0)
    {
    //this sort is very bad but work
     //you can wite a sort that work very speedly
    //so this sort is very slow for large data
    for (int i=0 ;i<v.size();i++)
    {
        for (int j=0;j<v.size()-1;j++)
        {
            if (v[j]>v[j+1])
                {T temp=v[j];
                v[j]=v[j+1];
                v[j+1]=temp;}
        }
    }
    }
}

template<class T>
bool noTwoNumberAlike(vector<T> list)
{
    sort_vector(list);
    for (int i=1;i<list.size();i++)
    {
        if(list[i-1]==list[i])
            return false;
    }
    return true;
}

template<class T>
bool checkLines(vector< vector<T> > board)
{
    int length=board.size();
    bool errorFound=false;

    for (int i=0;i<length;i++)
    {
        if(not noTwoNumberAlike(board[i]))
            return false;
        vector<T> temporaryVector;
        for (int j=0;j<length;j++)
            temporaryVector.push_back(board[i][j]);
        if (not noTwoNumberAlike(temporaryVector) )
            return false;
    }
    return true;
}
#包括
#包括
使用名称空间std;
模板
无效排序向量(向量和v)
{
如果(v.size()!=0)
{
//这种很糟糕,但效果很好
//你可以找到一种工作很快的方法
//因此,对于大数据,这种排序非常慢

对于(int i=0;II,如果您还显示了C++代码,建议更容易。注意:Python中的代码> >:[/]代码>只提供了一个数据副本,据我所知,所以……只复制数据。注意<代码> []:/COD>不翻译为“复制”。对于所有的对象,如果你不能使用<代码> []:/Cuth>运算符,你如何改变Python代码?我使用的是二维数组。那么你的代码将更复杂,但同样的概念。这又取决于你选择在C++中使用什么来最终决定。我给你一个样本,而不是你的最终目标。
int main()
{
    vector< vector<int> > g(3);
    for (int i=0;i<3;i++)
    {
        g[i].push_back(i);
        g[i].push_back(j);
        g[i].push_back(i+j);
    }
    cout<<checkLines(g);
    return 0;
}