第二次试验--算法基本功和综合思考

搜索引擎随着网络的发展,在我们身边越来越重要,我想没个人上网的时候,打开的第一个页面就是一个百度,Google,搜狗等搜索引擎的输入框,在这几种常见的引擎上输入自己想查找的信息。作为一个学计算机,学编程的学生几乎每天都要用到,但我们好像都对他们的工作原理都是一知半解的。下面是一段摘自维基百科的关于搜索引擎的定义和有关他的工作原理:

搜索引擎指自动从因特网搜集信息,经过一定整理以后,提供给用户进行查询的系统。因特网上的信息浩瀚万千,而且毫无秩序,所有的信息像汪洋上的一个个小岛,网页链接是这些小岛之间纵横交错的桥梁,而搜索引擎,则为用户绘制一幅一目了然的信息地图,供用户随时查阅。

搜索引擎的工作原理大致可以分为:

  1. 搜集信息:搜索引擎的信息搜集基本都是自动的。搜索引擎利用称为网络蜘蛛的自动搜索机器人程序来连上每一个网页上的超链接。机器人程序根据网页链到其中的超链接,就像日常生活中所说的“一传十,十传百……”一样,从少数几个网页开始,连到数据库上所有到其他网页的链接。理论上,若网页上有适当的超链接,机器人便可以遍历绝大部分网页。
  2. 整理信息:搜索引擎整理信息的过程称为“创建索引”。搜索引擎不仅要保存搜集起来的信息,还要将它们按照一定的规则进行编排。这样,搜索引擎根本不用重新翻查它所有保存的信息而迅速找到所要的资料。想象一下,如果信息是不按任何规则地随意堆放在搜索引擎的数据库中,那么它每次找资料都得把整个资料库完全翻查一遍,如此一来再快的计算机系统也没有用。
  3. 接受查询:用户向搜索引擎发出查询,搜索引擎接受查询并向用户返回资料。搜索引擎每时每刻都要接到来自大量用户的几乎是同时发出的查询,它按照每个用户的要求检查自己的索引,在极短时间内找到用户需要的资料,并返回给用户。目前,搜索引擎返回主要是以网页链接的形式提供的,这样通过这些链接,用户便能到达含有自己所需资料的网页。通常搜索引擎会在这些链接下提供一小段来自这些网页的摘要信息以帮助用户判断此网页是否含有自己需要的内容。

搜索引擎按其工作方式主要可分为三种,分别是全文搜索引擎(Full Text Search Engine,代表Google,百度)、垂直搜索引擎(Vertical Search Engine )和元搜索引擎(Meta Search Engine 代表InfoSpace、Dogpile)。

以下是搜索引擎工程师的岗位职责要求

参与搜索引擎核心技术的研发工作;
分析客户网站在GOOGLE,ALEXA,BAIDU等网站上排名靠前或靠后的原因;
评估、分析、建议客户网站的关键词,开发网站的外部链接的方法和网址;
编写各类搜索技术文档,所属各类项目/产品的设计、开发与维护工作

 

我第一次研究搜索引擎是在大二时,那时自己对SEO(搜索引擎优化)有关兴趣,但是可惜没坚持多久。当时主要是看了爬虫,看了Google和百度搜索引擎的区别,大家都在说百度的搜索是只要给钱就会在第一页显示,而Google一直坚持Pagerank排名,google在技术性文章的搜索支持上较好,尤其是当我在学Adroid时几乎用的Google搜索,当然百度也不错,但是除非是中文。每个搜索引擎的算法都不样是导致搜索效率不一样的原因:

一、百度基础算法分析:链接流行度核心算法+百度推广+框计算+开放平台;而Google是 使用PageRank技术检查整个网络链接结构

百度的盈利是靠竞价排名和广告,Google主要是广告等,百度的竞价排名虽然可以将网站的排名提前,但是对用户而言,将会导致一些无用的信息增多,降低用户体验,如果当初Google没退出中国,百度绝不会主要靠竞价排名来盈利的。

 

我感觉我们班很少有人会去做搜索引擎工程师吧(刚毕业时),因为这个只能自学,学校教的也比较少,但是我感觉去做SEO是挺不错的,尤其是在电商快速发展的今天。排名以为着流量,流量意味着金钱。因为我们现在学的主要还是用java,c++等开发软件,对搜索引擎的理解还停留在书面上。如果想对搜索引擎有更深刻的理解,我觉得还是要多看算法和多实践。


有关实习于工作

大三下学期了(其实一到六月,我们已经是大四了),每个人都在开始最后的努力,准备10月份的时候的校招了,我们都希望能在校招上找到一份满意的工作,所以,暑假的实习似乎是一个重要的砝码,当然,就已经毕业的大四说实习挺好找的,但主要的是你真的能在这两三个月里学到真正的东西。这里给大家推荐一个找实习的网站-大街网:http://www.dajie.com/

   在这个网站上,我们都可以看到其实实习公司对实习生的功能真的不是很高,只要你在学校有上过课,成绩过的去,想找到实习其实还是挺容易的,下面就是大街网上一些有关软件行业的实习要求:


我们可以看到实习的要求真的不高,在大学的这三年里,除了一些基本的所有的计算机专业要学的课之外,自己还是会上网看一些培训学校如传智播客的教学视频,从中也学到了许多的东西 ,如Android,C#和一些设计模式。虽然只是入门,但这也是一种经验啊。

   做为实习生,我们的目的是去获得项目经验,由于我们在学校接触的是理论知识居多,所以实际操作能力的培养还是很重要的。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值