代码拉取完成,页面将自动刷新
同步操作将从 尘年灬往事/图与网络优化_Qt 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include "basematrix.h"
#include "basevector.h"
BaseMatrix::BaseMatrix()
{
vectors=new QList<BaseVector*>();
}
QList<BaseVector *> *BaseMatrix::getVectors() const
{
return vectors;
}
void BaseMatrix::addVector(BaseVector *vector)
{
vectors->push_back(vector);
}
void BaseMatrix::removeVector(int v1,int v2)
{
for(int i=0;i<vectors->count();i++){
if((v1==vectors->at(i)->getV1()&&v2==vectors->at(i)->getV2())
||(v2==vectors->at(i)->getV1()&&v1==vectors->at(i)->getV2())){
vectors->removeAt(i);
break;
}
}
}
bool BaseMatrix::isBaseVector(int v1, int v2)
{
for(int i=0;i<vectors->count();i++){
if((v1==vectors->at(i)->getV1()&&v2==vectors->at(i)->getV2())
||(v2==vectors->at(i)->getV1()&&v1==vectors->at(i)->getV2())){
return true;
}
}
return false;
}
BaseVector *BaseMatrix::getBaseVector(int v1, int v2)
{
for(int i=0;i<vectors->count();i++){
if((v1==vectors->at(i)->getV1()&&v2==vectors->at(i)->getV2())
||(v2==vectors->at(i)->getV1()&&v1==vectors->at(i)->getV2())){
return vectors->at(i);
}
}
return NULL;
}
void BaseMatrix::clearVectors()
{
vectors->clear();
}
int BaseMatrix::getCount() const
{
return vectors->count();
}
QList<int> BaseMatrix::getCircuit(int v1, int v2)
{
QList<int> list;
list.push_back(v1);
for(int i=0;i<vectors->count();i++){
vectors->at(i)->setSelected(false);
}
int p=0;
while(p!=v2){
int q=list.at(list.count()-1);
p=0;
for(int i=0;i<vectors->count();i++){
if(!vectors->at(i)->getSelected()){
if(q==vectors->at(i)->getV1()){
p=vectors->at(i)->getV2();
}else if(q==vectors->at(i)->getV2())
p=vectors->at(i)->getV1();
if(p!=0){
vectors->at(i)->setSelected(true);
list.append(p);
break;
}
}
}
if(p==0){
list.removeAt(list.count()-1);
}
}
return list;
}
int BaseMatrix::getDegree(int v)
{
int ret=0;
for(int i=0;i<vectors->count();i++){
if(v==vectors->at(i)->getV1()||v==vectors->at(i)->getV2())
ret++;
}
return ret;
}
bool BaseMatrix::isDegreeOne(int v){
return getDegree(v)==1;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。