⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lgbase.h

📁 data struct algorithm and application in c++ 一书的课后答案源码
💻 H
字号:
// file lgraph.h
#ifndef LinkedGraph_
#define LinkedGraph_

#include "lbase.h"

class LinkedGraph : public LinkedBase<int> {
   public:
      LinkedGraph(int Vertices = 10)
        : LinkedBase<int> (Vertices) {}
      int Add(int i, int j);
      int AddNoCheck(int i, int j);
      int Delete(int i, int j);
      int Degree(int i);
};

int LinkedGraph::Add(int i, int j)
{// Add edge (i,j).
   if (i < 1 || i > n || i == j || Exist(i, j)) return 0;
   return AddNoCheck(i, j);
}

int LinkedGraph::AddNoCheck(int i, int j)
{// Add edge (i,j).  Perform no checks.
   if (!h[i].Insert(0,j)) return 0;
   if (!h[j].Insert(0,i)) return 0;
   e++;
   return 1;
}

int LinkedGraph::Delete(int i, int j)
{// Delete edge (i,j).
   if (i < 1 || i > n) return 0;
   h[i].Delete(j);
   h[j].Delete(i);
   e--;
   return 1;
}

int LinkedGraph::Degree(int i)
{// Return degree of vertex i.
   if (i < 1 || i > n) return 0;
   return h[i].Length();
}

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -