1. 檢索框架圖

可採用表格的形式
在橫軸和縱軸上採用不同性質的檢索特徵 在兩個特徵對應的行列的交叉點上就是我們要檢索的目標
這個很少用 是最低級的 因為生物種類的指標太多了 不可能這么簡單
比如 水生 陸生 兩棲
植物 金魚藻 蒲公英 苔蘚
動物 鯽魚 大象 青蛙
分類標准一般按進化標准排列 上面這個不太標准
還有的就是退格式檢索表,等距檢索表之類的

2. 搜索引擎由哪幾部分組成組成

蜘蛛負責網頁信息的抓取工作,一般情況下切詞器和索引器一起使用,它們負責將抓取的網頁內容進行切詞處理並自動進行標引,建立索引資料庫。查詢器根據用戶查詢條件檢索索引資料庫並對檢索結果進行排序和集合運算,如並集、交集運算,再提取網頁簡單摘要信息反饋給查詢用戶。 Google搜索引擎從功能上同樣分為三大部分:網頁爬行、標引入庫和用戶查詢。網頁爬行主要負責網頁的抓取,由URL伺服器、爬行器、存儲器、分析器和URL解析器組成, 爬行器是該部分的核心;標引入庫主要負責對網頁內容進行分析,對文檔進行標引並存儲到資料庫里,由標引器和分類器組成,該模塊涉及許多文件和數據,有關於桶的操作是該部分的核心;用戶查詢主要負責分析用戶輸入的檢索表達式,匹配相關文檔,把檢索結果返回給用戶,由查詢器和網頁級別評定器組成,其中網頁等級的計算是該部分的核心。 例:SOPI 搜索引擎系統的組成 SOPI 是一個小型的搜索引擎系統,功能與網路、 GOOGLE 類似,適用於中小型網站及企業的信息搜索及向用戶展示服務。本網站中的所有內容均通過此系統自動獲得。系統性能參數如下: 平台: 1U 兼容伺服器,雙至強 2.8G , 1G 內存 索引庫大小: 5G 資料庫: SqlServer2005 運行環境: Microsoft .NET Framework SDK v2.0 內存平均使用: 600-900M CPU 使用率: 10%-80% 日新增文章及圖片數: 10 萬篇 搜索時間: 5G 內容搜索結果 0.3-1 秒 SOPI 由五部分組成,分別為:信息採集系統 (SpiderSystem) 、信息分析系統 (AnalysisSystem) 、索引系統 (IndexSystem) 、管理系統 (AdminSystem) 、網站平台 (WebSystem) ,結構如下: 搜索引擎的主要工作流程是:首先從蜘蛛開始,蜘蛛程序每隔一定的時間(象google一般是28天)自動啟動並讀取網頁URL伺服器上的URL列表,按深度優先或廣度優先演算法,抓取各URL所指定的網站,將抓取的網頁分配一個唯一文檔ID(DocId),存入文檔資料庫。一般在存入文檔資料庫之前進行一定的壓縮處理。並將當前頁上的所的超連接存入到URL伺服器中。在進行抓取的同時,切詞器和索引器將已經抓取的網頁文檔進行切詞處理,並按詞在網頁中出現的位置和頻率計算權值,然後將切詞結果存入索引資料庫。整個抓取工作和索引工作完成後更新整個索引資料庫和文檔資料庫,這樣用戶就可以查詢最新的網頁信息。

3. 求一張網路三層架構的圖

三層網路架構是採用層次化架構的三層網路。

三層網路架構設計的網路有三個層次:專核心層(網屬絡的高速交換主幹)、匯聚層(提供基於策略的連接)、接入層 (將工作站接入網路)。



(3)搜索架構圖擴展閱讀:

三層網路結構短板

1、不斷地改變的三層網路結構數據中心網路傳輸模式。

2、網路收斂:三層網路結構中,同一個物理網路中的儲存網路和通信網路,主機和陣列之間的數據傳輸通過儲存網路來傳輸,在邏輯拓撲上就像是直接連接的一樣

3、虛擬化:將物理客戶端向虛擬客戶端轉化,虛擬化伺服器是未來發展的主流和趨勢,它使得三層網路結構的網路節點的移動變得非常簡單。

4、如果三層網路結構上主機需要通過高速帶寬相互訪問,但通過層層的uplink口,會導致潛在的、而且非常明顯的性能衰減。三層網路結構的原始設計更會加劇這種性能衰減,由於生成樹協議會防止冗餘鏈路存在環路,雙上行鏈路接入交換機只能使用一個指定的網路介面鏈接。

5、橫向網路(east-west)在縱向設計的三層網路結構中傳輸數據會帶有傳輸的瓶頸,因為數據經過了許多不必要的節點(如路由和交換機等設備)。

4. 一道數據結構題,這里是深度優先搜索過程中的(b)圖,是怎麼畫出來的求較為詳細的解釋,謝謝

你這個圖實在是看不清楚啊,我重新標記了一下,簡單給你回答一下吧。

深度優先搜版索屬於圖演算法的一種,權核心是對每一個可能的分支路徑深入到不能再深入為止,而且每個節點只能訪問一次,簡單地說就是,選定一個出發節點後一直往更深的節點走,沒有路了就返回,再選擇另一個節點繼續遍歷。

按照我重新標注的節點,深度搜索從a出發,先選擇b,然後一路深入e、d、c,這時沒有可選的了,原路返回到a;再選擇 f,然後一路深入h、g,又沒有可選的了,再返回到節點a;此時沒有其他節點可選,遍歷結束。

深度優選的訪問順序並不是唯一的,上面只是解釋了一種,還可以有其他的順序,例如:a->b->c->d->e(返回a),a->f->g->h(返回a),結束。這個也是可以的。

5. 企業搜索的應用架構

堅持以人為導向的設計原則, 以滿足不同使用者應用需求的企業搜索入口為統一展現手段,以開放的應用開發平台為應用支撐,提供經過安全級別控制與過濾的安全檢索、管理企業內容和知識,根據企業實際需求拓展內容管理、知識管理、協同應用等大量功能,通過內容整合技術實現對企業 ERP、PDM、CRM等業務系統的數據和流程。以靈活、方便、快捷地方式組合應用,滿足企業管理支撐的各種業務需要。
功能架構如下圖所示:
圖四、應用架構
圖五、非結構化內容處理

6. 數據結構,圖的深度搜索和廣度搜索,求代碼

深度優先遍歷:
#include <stdio.h>
#include <malloc.h>

#define INFINITY 32767
#define MAX_VEX 20 //最大頂點個數

bool *visited; //訪問標志數組

//圖的鄰接矩陣存儲結構
typedef struct{
char *vexs; //頂點向量
int arcs[MAX_VEX][MAX_VEX]; //鄰接矩陣
int vexnum,arcnum; //圖的當前頂點數和弧數
}Graph;

//圖G中查找元素c的位置
int Locate(Graph G,char c){
for(int i=0;i<G.vexnum;i++)
if(G.vexs[i]==c) return i;
return -1;
}

//創建無向網
void CreateUDN(Graph &G){
int i,j,w,s1,s2;
char a,b,temp;
printf("輸入頂點數和弧數:");
scanf("%d%d",&G.vexnum,&G.arcnum);
temp=getchar(); //接收回車
G.vexs=(char *)malloc(G.vexnum*sizeof(char)); //分配頂點數目

printf("輸入%d個頂點.\n",G.vexnum);
for(i=0;i<G.vexnum;i++){ //初始化頂點
printf("輸入頂點%d:",i);
scanf("%c",&G.vexs[i]);
temp=getchar(); //接收回車
}

for(i=0;i<G.vexnum;i++) //初始化鄰接矩陣
for(j=0;j<G.vexnum;j++)
G.arcs[i][j]=INFINITY;

printf("輸入%d條弧.\n",G.arcnum);
for(i=0;i<G.arcnum;i++){ //初始化弧
printf("輸入弧%d:",i);
scanf("%c %c %d",&a,&b,&w); //輸入一條邊依附的頂點和權值
temp=getchar(); //接收回車
s1=Locate(G,a);
s2=Locate(G,b);
G.arcs[s1][s2]=G.arcs[s2][s1]=w;
}
}

//圖G中頂點k的第一個鄰接頂點
int FirstVex(Graph G,int k){
if(k>=0 && k<G.vexnum){ //k合理
for(int i=0;i<G.vexnum;i++)
if(G.arcs[k][i]!=INFINITY) return i;
}
return -1;
}

//圖G中頂點i的第j個鄰接頂點的下一個鄰接頂點
int NextVex(Graph G,int i,int j){
if(i>=0 && i<G.vexnum && j>=0 && j<G.vexnum){ //i,j合理
for(int k=j+1;k<G.vexnum;k++)
if(G.arcs[i][k]!=INFINITY) return k;
}
return -1;
}

//深度優先遍歷
void DFS(Graph G,int k){
int i;
if(k==-1){ //第一次執行DFS時,k為-1
for(i=0;i<G.vexnum;i++)
if(!visited[i]) DFS(G,i); //對尚未訪問的頂點調用DFS
}
else{
visited[k]=true;
printf("%c ",G.vexs[k]); //訪問第k個頂點
for(i=FirstVex(G,k);i>=0;i=NextVex(G,k,i))
if(!visited[i]) DFS(G,i); //對k的尚未訪問的鄰接頂點i遞歸調用DFS
}
}

//主函數
void main(){
int i;
Graph G;
CreateUDN(G);
visited=(bool *)malloc(G.vexnum*sizeof(bool));
printf("\n深度優先遍歷: ");
for(i=0;i<G.vexnum;i++)
visited[i]=false;
DFS(G,-1);
printf("\n程序結束.\n");
}

輸出結果為(紅色為鍵盤輸入的數據,權值都置為1):

輸入頂點數和弧數:8 9
輸入8個頂點.
輸入頂點0:a
輸入頂點1:b
輸入頂點2:c
輸入頂點3:d
輸入頂點4:e
輸入頂點5:f
輸入頂點6:g
輸入頂點7:h
輸入9條弧.
輸入弧0:a b 1
輸入弧1:b d 1
輸入弧2:b e 1
輸入弧3:d h 1
輸入弧4:e h 1
輸入弧5:a c 1
輸入弧6:c f 1
輸入弧7:c g 1
輸入弧8:f g 1

深度優先遍歷: a b d h e c f g
程序結束.
廣度優先遍歷:
<一>深度優先搜索(Depth-First Search—DFS)是指按照深度方向搜索,它類似於樹的先根遍歷,是樹的先根遍歷的推廣。
深度優先搜索圖的基本思想是:
假設圖G初態為所有頂點未被訪問(visited[i]=false),從G中任選一頂點vi:
⑴、從該頂點vi出發,首先訪問vi,並置visited [vi ]=true;
⑵、然後依次搜索vi的每一個鄰接點vj;
⑶、若vj未被訪問過,則以vj為新的初始出發點,重復⑴
若vj已被訪問過,則返回到vi另一個鄰接點,重復⑶
⑷、如果經過⑴、⑵、⑶後,圖中仍有未被訪問的頂點,再從中任選一頂點,重復⑴、⑵、⑶,直至所有頂點都被訪問過,遍歷結束。

<二>廣度優先搜索遍歷圖(樹的層次遍歷的推廣)
1.從圖中某頂點v出發,在訪問v之後,
2.依次訪問v的各個未曾被訪問過的鄰接點,
3.然後分別從這些鄰接點出發依次訪問它們的鄰接點,並使「先被訪問的頂點的鄰接點」先於「後被訪問的頂點的鄰接點」被訪問,直至圖中所有已經被訪問的頂點的鄰接點都被訪問到;
4.若圖中尚有頂點未曾被訪問,則另選圖中一個未曾被訪問的頂點作起始點,訪問該頂點,繼續過程2、3,直至圖中所有頂點都被訪問到為止。
(1)為避免重復訪問, 需要一個輔助數組 visited[ n],給被訪問過的頂點加標記。
(2)為了實現逐層(按頂點的路徑長度遞增)訪問,演算法中需使用了一個隊列,以記憶正在訪問的這一層和下一層的頂點,以便於向下一層訪問。

代碼如下:

#include<iostream.h>
#include<malloc.h>
#define MAX_VERTEX_NUM 20
typedef int InfoType;
typedef int VertexType;
typedef enum{DG,DN,UDG,UDN}GraphKind;

# define MAXQSIZE 100
typedef int QElemType ;//隊列
typedef struct//隊列
{
QElemType *base; // 動態分配存儲空間
int front; // 頭指針,指向隊列頭元素
int rear; // 尾指針,指向 隊列尾元素的下一個位置
}SqQueue;

typedef struct ArcNode//圖
{
int adjex;//該弧所指向的頂點的位置
struct ArcNode *nextarc;//指向下一條弧的指針
InfoType *info;//該弧相關信息的指針
}ArcNode;

typedef struct VNode
{
VertexType data;//頂點信息
ArcNode *firstarc;//指向第一條依附該頂點的弧的指針
}VNode,AdjList[MAX_VERTEX_NUM];

typedef struct
{
AdjList vertices;//頂點
int vexnum,arcnum;//圖的當前頂點數和弧數
GraphKind kind;//圖的種類標志
}ALGraph;

int LocateVex(ALGraph G, int v)//確定v在G中位置,即頂點在G.vertices中的序號
{
int i;
for(i=0;i<G.vexnum;i++)
{
if (G.vertices[i].data==v) return i;
}
return -1;

}

// ###################生成圖G的存儲結構-鄰接表###############################################
void CreateGraph(ALGraph &G)
{
int k,sv,tv,i,j;

cout<<"請輸入圖的頂點數(eg:5)";
cin>>G.vexnum;
cout<<"請輸入圖的弧數(eg:6)";
cin>>G.arcnum;
// cout<<"請輸入圖的類型(eg:)";
// cin>>G.kind;// 輸入頂點數、邊數和圖類:1

for(k=0;k<G.vexnum;k++)// 構造頂點數組:2
{
cout<<"請輸入圖的頂點信息";
cin>>G.vertices[k].data;// 輸入頂點
G.vertices[k].firstarc=NULL;//初始化鏈表頭指針為"空"
}

cout<<"請輸入該圖的弧(v1-->v2),例如:(v1=1,v2=3),(v1=2,v2=4)"<<endl;
for(k=0;k<G.arcnum;k++)// 輸入各邊並構造鄰接表: 3
{
cout<<"請輸入第"<<k+1<<"條弧的始點信息sv(0<sv<G.vexnum)";
cin>>sv;
cout<<"請輸入第"<<k+1<<"條弧的終點信息tv(0<tv<G.vexnum)";
cin>>tv;// 輸入一條邊(弧)的始點和終點
cout<<endl<<endl;

i = LocateVex(G, sv);
j = LocateVex(G, tv); // (比較)確定sv和tv在G中位置,即頂點在G.vertices中的序號

while((i<0||i>=G.vexnum)||(j<0||j>=G.vexnum)) //if (sv,tv) illegal,again
{
cout<<"請輸入第"<<k+1<<"條弧的始點信息sv(0<sv<G.vexnum)";
cin>>sv;
cout<<"請輸入第"<<k+1<<"條弧的終點信息tv(0<tv<G.vexnum)";
cin>>tv;
cout<<endl<<endl;
i = LocateVex(G, sv);
j = LocateVex(G, tv); // (比較)確定sv和tv在G中位置,即頂點在G.vertices中的序號

} //while end

ArcNode *p;
p=(ArcNode*)malloc(sizeof(ArcNode));
if(!p)
{
cout<<"Overflow!"; // 存儲分配失敗
return ;
}

p->adjex=j;// 對弧結點賦鄰接點"位置「
p->nextarc=G.vertices[i].firstarc;//頭插法,將tv結點插入到第i個單鏈表中
p->info=NULL;
G.vertices[i].firstarc=p;// 插入鏈表G.vertices[i]
}
}

//################有向表的深度優先遍歷#####################################################################
void DFS(ALGraph G,int v,int visited[])
{
int w;
ArcNode *p;
cout<<G.vertices[v].data<<"->";//訪問第v+1個頂點;
visited[v]=1;
p=G.vertices[v].firstarc;
if(p!=NULL)
w=p->adjex;//w是v的下一個鄰接點的位置,即第v+1個頂點的下一個頂點是第w+1個頂點;
if (p!=NULL)//如果有鄰接點w
{
if(visited[w]==0)//如果w沒訪問過
{
DFS(G,w,visited);
}
else//若訪問過,則訪問v的下一個鄰接點,並返回至判斷是否存在該鄰接點
{
p=p->nextarc;//G.vertices[v].firstarc=G.vertices[v].firstarc->nextarc;
if(p!=NULL) w=p->adjex;//w=G.vertices[v].firstarc->adjex;
}
}
}

void DFSTraverse(ALGraph G)
{

int v,visted[MAX_VERTEX_NUM];
for (v=0;v<G.vexnum;v++)
{
visted[v]=0;
}
for (v=0;v<G.vexnum;v++)
{
if(visted[v]==0)
DFS(G,v,visted);
}

}

//#############廣度優先搜索遍歷######################################################################
//~~~~~~~~~~~~輔助隊列~~~~~~~~~~~~~~~~~~~~~~~~~
int InitQueue (SqQueue &Q)// 構造一個空隊列Q
{
Q.base=(QElemType*)malloc(MAXQSIZE*sizeof(QElemType));
if(!Q.base)
{
cout<<endl<<"Overflow ! "; // 存儲分配失敗

return 0;
}

Q.front=Q.rear=0;
return 1;
}

int EnQueue(SqQueue &Q,QElemType e)// 插入元素e為Q的新的隊尾元素
{
if ((Q.rear+1)%MAXQSIZE==Q.front)//①判滿
{
cout<<"Error ! The SqQeueu is full ! ";
return 0;
}
Q.base[Q.rear]=e;// ②插入隊尾
Q.rear=(Q.rear+1)%MAXQSIZE;//③隊尾指針後移
return 1;
}

int DeQueue(SqQueue &Q,QElemType &e)// 若隊列不空,則刪除Q的隊頭元素,用e返回其值,並返回OK; 否則返回ERROR
{
if (Q.rear==Q.front)
{
cout<<endl<<"Error ! It's empty!";
return 0;
}
e=Q.base[Q.front];
Q.front=(Q.front+1)%MAXQSIZE;
return(e);
}
int QueueEmpty(SqQueue Q)
{
if(Q.front==Q.rear)
return (1);
else
return (0);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void BFS(ALGraph G,int v,int visited[],SqQueue &Q)
{
int u,w;

ArcNode *p;
cout<<G.vertices[v].data<<"->";//訪問第v+1個頂點;
visited[v]=1;
EnQueue(Q,v);// v入隊列
while (!QueueEmpty(Q))
{
DeQueue(Q,u);// 隊頭元素出隊並置為u
p=G.vertices[v].firstarc;
if(p!=NULL)
w=p->adjex;
for (;p!=NULL;)
{
if (visited[w]==0)
{
cout<<G.vertices[w].data<<"->";
visited[w]=1;
EnQueue(Q, w); // 訪問的頂點w入隊列
}
p=p->nextarc;
if (p!=NULL)
w=p->adjex;
}
}
}

void BFSTraverse(ALGraph G)
{
SqQueue Q;
int v,visted[MAX_VERTEX_NUM];
for (v=0;v<G.vexnum;v++)
{
visted[v]=0;//初始化訪問標志
}
InitQueue(Q);// 置空的輔助隊列Q
for ( v=0; v<G.vexnum; ++v )
{
if(visted[v]==0)// v 尚未訪問
BFS(G,v,visted,Q);// 調用BFS()
}
}

//###############main函數#################
void main()
{
ALGraph G;
CreateGraph(G);
cout<<"深度優先遍歷如下:"<<endl;
DFSTraverse(G);
cout<<"End !"<<endl<<endl<<"...OK!...";
cout<<endl<<endl<<"廣度優先遍歷如下:"<<endl;
BFSTraverse(G);
cout<<"End !"<<endl<<endl<<"...OK!...";

}

7. 怎樣在網上搜索某些電子電器的結構原理圖和電路圖

你可以登陸這個網站
資料比較全http://www.cndzz.com/

8. 搜索引擎大致由哪三個部分組成( )。

搜索系統、索引系統、檢索系統。答案應該選ABC。

解析:搜索引擎基本結構一般包括:搜索器、索引器、檢索器、用戶介面等四個功能模塊。

1、搜索器:搜索器也叫網路蜘蛛,是搜索引擎用來爬行和抓取網頁的一個自動程序,在系統後台不停歇地在互聯網各個節點爬行,在爬行過程中盡可能快的發現和抓取網頁。

2、索引器:它的主要功能是理解搜索器所採集的網頁信息,並從中抽取索引項。

3、檢索器:其功能是快速查找文檔,進行文檔與查詢的相關度評價,對要輸出的結果進行排序。

4、用戶介面:它為用戶提供可視化的查詢輸入和結果輸出的界面。

(8)搜索架構圖擴展閱讀:

按照搜索方式進行分類:

1、全文搜索引擎

一般網路用戶適用於全文搜索引擎。這種搜索方式方便、簡捷,並容易獲得所有相關信息。但搜索到的信息過於龐雜,因此用戶需要逐一瀏覽並甄別出所需信息。尤其在用戶沒有明確檢索意圖情況下,這種搜索方式非常有效。

2、元搜索引擎

元搜索引擎適用於廣泛、准確地收集信息。不同的全文搜索引擎由於其性能和信息反饋能力差異,導致其各有利弊。元搜索引擎的出現恰恰解決了這個問題,有利於各基本搜索引擎間的優勢互補。而且本搜索方式有利於對基本搜索方式進行全局控制,引導全文搜索引擎的持續改善。

3、垂直搜索引擎

垂直搜索引擎適用於有明確搜索意圖情況下進行檢索。例如,用戶購買機票、火車票、汽車票時,或想要瀏覽網路視頻資源時,都可以直接選用行業內專用搜索引擎,以准確、迅速獲得相關信息。

4、目錄搜索引擎

目錄搜索引擎是網站內部常用的檢索方式。本搜索方式旨在對網站內信息整合處理並分目錄呈現給用戶,但其缺點在於用戶需預先了解本網站的內容,並熟悉其主要模塊構成。總而觀之,目錄搜索方式的適應范圍非常有限,且需要較高的人工成本來支持維護。

9. 怎樣搜索棒球棒的結構圖,特別是構造和內部結構圖

去網路棒球吧看下,那邊有平面刨圖。一般是牛皮表皮,羊毛線球,和鐵芯里。現在么有安全棒球,軟式棒球什麼的,都不一樣的