2008-03-18搜索引擎

26条评论
3,685 views

各种排序查询的算法效率比较

各种排序查询的算法效率比较

排序

SN

排序方式

时间复杂度

空间复杂度

稳定性

算法描述

 

备注:

时间复杂度O(1)<O(n)<O(logn)<O(nlogn)<O(n2)

1,2,3属于插入排序; 4,5属于交换排序; 6,7属于选择排序.

记录数大时,选择改进算法; 记录数较小时,可采用简单排序(1,4,6)

平均情况下,快速排序速度是最快的,推荐使用.

稳定性指具有相同值的记录在排序时相对次序不改变.

内排序: 数据量较少时,仅在内存中进行;  

外排序: 数据量较大时,在内外存中进行数据交换(常用归并排序,文件来解决)

查询

检索表: 检索所依赖的数据结构.

查询定义: 根据KEY,在检索表中确定VALUE的值.

1 线性表

1)顺序检索: 采用逆向检索

2)折半检索

3)分块检索

2 树表

1)二叉排序树

2)平衡的二叉排序树

3)B

4)红黑树

3 HASH

最快只需常数时间.

4 其它数据结构

1)序列容器

VectOr: 类似线性表

List 类似线性表

 

2)关联容器

Map: 图的检索, 一对一

Multimap: 一对多

Hashmap: 常数时间检索,hash_table实现.

 

检索算法评估: (平均检索长度ASL)

下面是检索算法效率列表:

检索表

检索算法

ASL

算法描述

线性表

顺序

(n+1)/2

 

折半

Log2(n+1)-1 (n>>100)

适用于有序表

分块

   

树表

二叉排序树

   

平衡二叉排序树

   

B

   

红黑树

   

HASH

     
       
       

 

2008-02-11搜索引擎

24条评论
2,150 views

社会化搜索与SEO的关系

      Google搜索产品及用户体验副总裁认为社会化搜索(social search)将会是Google搜索的一个重点。这是一个很有趣的转变,因为在去年8月,Marissa Mayer曾经说过社会化搜索前景不大。但随着Facebook等社会化网站的声势和影响力不断壮大,Google显然在态度上有了变化。

        那到底社会化搜索和Google搜索引擎之间有什么样的关系?Marissa Mayer暗示,Google在未来将可能通过你的Gmail去辨别你的好友,并利用他们的搜索历史记录去影响与你及你的社交网络里的人员有关的 Google搜索结果。这意味着在未来,你在社交网络里的表现,很可能决定成为你的网络位置的因素之一。Marissa Mayer还说一开始这种关系网会基于Gmail联系人,但也不排除Google会直接从第三方社交网站(比如MySpace、Facebook等)里导入用户的好友信息。虽然目前Google还没有正式执行这些操作,但它们很可能正处于开发中。毫无疑问,一旦Google搜索启用了社会化搜索特性,那么一些基于Google搜索引擎技术的第三方网站比如AOL、MySpace也会受到影响。因为社会化搜索特性很可能使它们重排搜索结果。

         社交网络因素的加入,将使得未来的Google搜索引擎更复杂,影响排名的因素也变得更多。再加上Google现在逐步推行的个性化搜索及整合搜索特性,相信以后对Google进行SEO时,难度将会变得更大.

        以后的文章中将着重探讨社会化搜索环境中如何开展SEO.希望大家踊跃发布自己的意见和观点..

作者:阿猎
原载:阿猎的SEO博客
版权所有,转载请以链接形式注明作者及原始出处。

2007-10-17搜索引擎

4条评论
1,863 views

雅虎和微软的搜索出现严重错误

今天一大早。到公司来之后习惯性的打开YAHOO英文搜索,搜寻任何关键词的时候,发生错误,错误页面全部跳转到百度的错误页面上。

 请看下列视频:http://www.etcis.com/soft/MSN的搜索跑到百度的错误页面上去了.rar

原因开始探寻中:

黑色梦中认为原因可能是:百度买断了电信的报错。

部门经理认为:百度和IDC 合作。

 百度一向重视渠道宣传

  大部分传统企业认识百度都是从百度渠道上的直销宣传中知道的。

  因为推广方式的不同,所以他们的用户群有较大的不同,同时造成了他们流量上的较大差别。

  普通网民多呢? 还是精英网民多?

看来百度的渠道很深。。呵呵

yahoo和Msn 应该不会出现如此的原则性的错误。所以IDC电信这边出错的几率比较大。希望到上午10点18分的时候。yahoo可能已经注意到这个问题,及时的处理掉了这个问题。把报错问题换成了以下图片。

MSN的搜索页面仍然是百度的错误页面。

附带:视频录像软件以及注册机

视频录像软件

2007-09-03搜索引擎

1条评论
1,573 views

雅虎要无限大了

 “雅虎要无限大了!”    雅虎的无限量邮箱的这个服务,除了中国和日本外,雅虎邮箱在全球已于2007年5月-6月全面实现无限量,而如果推行的顺利的话,可能在接下来的9-10月,就会在中国全面推行雅虎的无限邮箱。        刚听到这个消息的人,都会不自觉的将雅虎无限电邮的新闻,和很久以前google提供的gmail服务联系在一起,想当年,申请一个gmail帐号还需要有推荐人,而gmail除了一个1G邮箱的概念而言,总体来说,各种邮件的安全性和垃圾邮件的处理机制,貌似并不是特别的突出。而且最近我用GMAIL的时候老出现掉线的问题。

      此次的雅虎电邮无限空间事件,除了给了用户一个使用无限电邮服务的机会,显示雅虎对于用户的充分重视外,对业界的启示里,更重要是揭示了一个电邮发展的方向:“个性化和实用化”,以往能使用就是好邮箱的概念,被雅虎打破了:“不仅能用,而且方便,安全,大容量”

    如果雅虎无限邮箱服务真的在9月份就能够在中国区推出,我相信届时对于国内邮件服务市场会有一系列的冲击。希望对于个人用户来说,可以使用到更加简单,使用,安全的雅虎邮件服务。那么,我绝对会选择雅虎的邮箱。

2007-08-06搜索引擎

40条评论
3,660 views

搜索蜘蛛是如何工作的

蛛人是如何工作的

你应该知道在搜索引擎结果页面中排得较高是怎样的重要。但是,你的网站还没有排到前三页,并且你也不了解是为什么。有种可能是,蜘蛛人想索引到你的网页时你却把它搞糊涂了。那你怎么能发现这个情况呢?别着急,继续往下看。

你有个很不错的网站,也有很多相关的内容,却总也不能在搜索结果页上排名很高。你也知道,如果你的网站不排在前面几页,查询者很有可能是发现不了这个网页的。你不能理解为什么对google 和别的主要搜索引擎网页不可视。而你竞争对手的网页还没你的好,却排在比你高的位置上。

搜索引擎不是人类。为了处理成百万的包含在万维网上的网页,搜索引擎公司已经几乎完全使得这个程序自动化了。一个软件程序不会像人眼那样看待你的网页。这并不是说你不需要有个可以带给访问者快乐的网站。这意味着你需要意识到搜索引擎“看”你网页时是不一样的,要根据这个安排。

尽管网络很复杂,而且还要迅速处理所有的数据,搜索引擎事实上履行的是短短的操作,以把相关的结果反馈给使用者。这四个操作的每一个都可能出错。这不是说搜索引擎本身自己会出现错误,它可能只是遇到了一些没有程序来处理的东西。或者它被编程的方式来处理一切遇到的东西会产生不理想的效果。

理解搜索引擎是如何操作可以帮你理解什么会发生错误。所有的搜索引擎都是履行四大任务:

        网站抓取。搜索引擎发送自动程序,一些时候称为“蜘蛛人”,蜘蛛人用网页超链接结构爬到网页上。根据我们的一些最好估计,搜索引擎蜘蛛人已经爬上了现在网上已有的一边的网页上。
        文件检索。蜘蛛人爬到某一个网页后,它的内容要变成一个模板,当使用者询问搜索引擎的时候,会很容易回复。如此,网页就被屯放在一个巨大的紧密管理的组成搜索引擎索引的数据库中。这些索引包括数十亿的文件,不到一秒钟就可以呈现给使用者。
        询问程序。当一个使用者使用一个搜索引擎时,引擎检查它的索引以发现与之相匹配的文件。从表面上看起来极为相似的询问会产生很不同的结果。举个例子:搜索“田野和河流杂志”,如果不加引号,google会产生400万多结果。加上引号,google 仅仅反馈19600个结果。这只是搜索者可以用来缩小搜索量并得到相关结果的一个方法。
        排名结果。Google不会把所有的19600个结果都显示给你看,而且即使是那样,它也需要一些方法来决定哪些要排在前面。所以搜索引擎运行了一个算法,来计算哪些是与搜索的东西最相关。这些被最先列出来,其余的按相关程度向下排。

现在你对整个过程应该有些印象了。就需要花些时间来近距离看看每个。这个会帮助你理解事情怎样向好的发展,怎样和为什么有些任务向坏的方向发展。这篇文章会关注网页抓取。

不抓取,却阻止

当你开始网站航行时是主要考虑你的现实访问者,当然也是应该的。但是有些导航结构可能会阻止搜索引擎蜘蛛,使得他们不太容易在第一位置发现你的网页。作为一个另外的红利,许多你对网页做的事情会使得蜘蛛人更容易找到网站内容,使得访问者在网页上更容易找到方向。

顺便说一下,你可能不想要蜘蛛人有能力索引到你网页上的所有内容,这个你值得记在心里。如果有个网页是要缴费才能进入的,你可能就不希望google 抓取到你的内容来显示给任何输入关键词的人看。有很多方法可以人为地阻止蜘蛛人抓到这些内容。

动态的URL是对搜索引擎蜘蛛人的一个最大的阻止。特别是,有两个及以上的动态参数的网页会给与蜘蛛人装备。你看到一个动态的URL的时候能够认出来,它经常会有许多的“垃圾”符号比如问号、等号、和号(&)和百分号。这些网页对于人类使用者是很好的,他们会通过设定一些参数得到。比如说,在weather.com搜索框中输入一个邮政编码,将会反馈一个特殊地区的天气情况的页面和一个有着动态的URL的页面位置。

还有很多别的方法蜘蛛人不喜欢。比如,相同网址上的网页有超过一百个超链接会使得他们看一眼就累了。蜘蛛人不会追随这些链接。如果你是想建造一个网站地图,有更好的方法来阻止他。

页面上藏着从你的主页上来的多于三个链接也会不被抓取。因为这个会使得许多人类在面对网页上那么多链接又没有导航的情况下搞晕。

要求“身份验证”等的网页也不会被抓取。蜘蛛人不是扫描器,也不是都有相同的能力。他们也许不能够保持相同形式的验证。

另一个阻止的是分割成框架的网页。许多网页设计者喜欢框架;它使得访问者即使在内容中转悠的时候都保持在同一个页面中,但是蜘蛛人发现框架网页很困惑。对它们而言,内容就是内容,它们不知道哪个网页应该出现在搜索结果页面上。直率的讲,许多用户也不喜欢框架,只不过是提供一个更干净的页面。

上面讲的大部分阻止蜘蛛人工作的东西是一些你意外地放在页面上的。下面要来讲一些网站管理员故意用的来阻止蜘蛛人的。前面我提到过一个最主要的原因,内容需要用户付费才可看到,还有一些别的,比如内容可能是免费的,但不是每个人都可以轻易得到的。

填完一些表格并提交才能进入的网站很有可能会蜘蛛人是关门的。他们是无法得到按钮或类型的。同样,要求使用下拉菜单的网页可能是搜索不到的,只能通过一个搜索框才能得到的文件也一样。

故意阻止的文件一般是抓取不到的。

现在你了解到了什么可以让蜘蛛人窒息,你怎样鼓励他们去任何他们想去的地方。关键就是要提供直接的HTML链接到每个你想蜘蛛人去的页面。还有,给他们一个浅的池子去玩耍。蜘蛛人一般从主页开始,如果你的网页的部分不能从那儿进入,机会就是蜘蛛人不会看到。这个时候网站地图的使用就是无价的。

蜘蛛人在超链接中看到什么?

我假设你对HTML相当的熟悉。如果你看过HTML页面的代码,你可能会注意到超链接出现地方的文本,<a href=http://www.etcis.com>seo Chat</a>
当网站浏览器读到这儿的时候,它会知道文本“seo chat”应该是个超链接http://www.etcis.com 网页的。附随的,在这个例子中“seo chat”是链接的引导词。当蜘蛛读到这个文本的时候,它会想,“OK,页面www.etcis.com”是于当前页面上的文本相关的,而且与“SEO CHAT”极为相关。

现在来看点复杂的:
<a href=http://www.etcis.com
Title=”great site for seo info”
Rel=”nofollow”>seo chat</a>

现在怎样?引导词没有变化,所以当网页浏览器展示到这儿的时候,链接看起来还是一样。但是一个蜘蛛人会想,“OK,不仅仅这个网页与’seochat’是相关的,它还与短语‘great site for seo info’相关。而且,我现在在的这个网页和这个超链接还有关系。它显示这个链接不是作为那个网页的投票,那就不会增加PR值了。”

最后的那一点,关于这个链接不作为那个网页的投票,是标签“rel=nofollow”反映的。这个标签演变成解决人们提交相关评论到博客“欢迎访问我的药品网站”的链接。这种评论方法是种试图提高他自己网页在搜索排名位置的方法。这个被称为“评论垃圾”。大多数搜索引擎不喜欢评论垃圾,因为它歪斜了它们的结果,使得他们相关性下降。你可能会猜到,“nofollow”属性对于搜索引擎是特别的,它在那儿是不会被别人注意到的。雅虎,MSN, google, 认出它,但是askjeeves不支持nofollow, 它的蜘蛛人只是简单的忽视掉这个标签。

在一些情况中,链接可能是到一个图片的。超链接会包括照片的名称,还可能包括一些“alt”属性的备用文本,这些对于盲人用的声音浏览器有帮助。它也同时对于蜘蛛人有助,因为它给与了另一个页面描述的证据。

超链接在网页上可能还有别的形式,但是总的来说,这些形式不通过排名或蜘蛛人价值。总而言之,链接越接近<a href=”URL”>text</a>的形式, 那么蜘蛛人也容易抓住链接,反之亦然。

返回顶部