导航:首页 > 编程语言 > java编辑距离

java编辑距离

发布时间:2022-10-02 08:22:28

Ⅰ uc浏览器

最新版本功能介绍
UC浏览器魅族专版 v7.5
UC浏览器魅族M9专版于今日正式发布。此次发布的M9专版UC浏览器为UC浏览器7.5版for Android平台的基础上针对M9的分辨率专门进行适配,能够高清、完美的支持魅族M9,为煤油们带来最快、最完美的上网体验。[2] UC浏览器魅族M9专版特性包括 高清、完美适配魅族M9界面;UC浏览器魅族专版(2张) 流量最省、速度最快、性能稳定; 原汁原味呈现wap2.0网页,彩版/3G版看得更爽; 提供“缩放模式(压缩)”,在完美呈现电脑般浏览体验同时,做到流量更省; 更多细节设置,贴心、方便:自动锁屏、多窗口切换、高速下载。 UC浏览器功能 UC浏览器能在市面上绝大部手机上安装、运行,是基于客 uc浏览器
户端/服务器端架构产品,由专门客户端负责页面所需数据处理、压缩工作,客户端负责处理过数据解析,因此,在国内网络环境下,UC浏览器页面加载速度要比大部分同类软件要快,在数据压缩技术支持下,还能节省使用流量 UC浏览器是一款免费网页浏览软件,主要应用在以手机为主的各种移动终端,能帮助用户快速访问互联网,随时随地进行无线冲浪:编辑个人博客,登录网络社区,收发电子邮件,订阅热点RSS…… 提供在线功能; 提供友度、优酷、薯仔等海量点播视频在线播放功能; 提供在线电台、mp3音乐播放功能; 提供不同网络带宽下的多个版本(流畅、清晰、Q屏)。 UC桌面是一款免费的UCWEB6浏览器功能扩展插件,支持目前各类主流手机网络接入方式,让您手机功能更人性化。 UC桌面主要提供以下增强功能: 在手机待机界面上动态显示当天天气情况和新闻热点; 来去电信息显示; 未接电话提醒; 自动IP拨号。UC浏览器PPC平台7.2正式版更新(2010年6月18日) WindowsMobile&WindowsCE平台UC浏览器7.2正式版主要适用于多普达、三星等厂商的WindowsMobile机型,如多普达S900等,以及部分WindowsCE机型,如魅族M8等。 以下为本次发布的主要内容: 【功能优化】 夜间模式无图框优化 历史记录支持后台打开 WAP出错页面展现优化 首页网址|搜索右键优化 【新增功能】 Flash10功能支持,手机偷菜,PC感受(仅PPC05/03支持) Post下载支持,更多选择,更多资源 网盘上传支持,网盘文件,灵活分享 【修改BUG】 无法下载m3u文件 下载分段设置过大导致无法下载 Chunked文件无法下载 下载大文件进度条显示异常 手机淘宝网确认购买商品后失败
编辑本段版本
【UC浏览器】全新UC浏览器7.6版更新上线(2011.01.30) 【UC浏览器】Symbian平台7.3正式版(2010.7.14) 【UC浏览器】WindowsMobile平台7.1正式版发布(2009.6.1) 【UC浏览器】Blackberry 平台7.1正式版发布啦(2009.5.19) 【UC浏览器】V3平台7.2beta2支持社区Flash游戏版本发布(2010.5.5) 【UC浏览器】7.1版登录App Store 可访问WAP网站 【UC浏览器】java 7.2正式版发布(2010.5.19) 【UC播放器】Symbian S60 V3/V5平台2.2beta2版本发布(2010.5.6) 【UC播放器】Symbian S60 V2平台2.2beta1版本发布(2010.2.2) 【UC浏览器】Android平台7.1beta版发布啦~(2009.5.12) 【UC浏览器】Android平台7.0 OPHONE专版公测版推出(2010.2.8) 【UC浏览器】MTK平台UC浏览器发布(2010.5.5) 【UC桌面】Symbian平台1.7patch2版发布啦~(2010.4.30) 【UC桌面】WindowsMobile PPC平台1.5正式版发布(2010.2.2) 【UC迅雷】Symbian S60 V2平台V1.2beta版本发布(2010.7.1) 【UC迅雷】Symbian S60 V3/V5平台V1.2beta版本发布啦~(2010.7.1)
编辑本段研发公司
2010年2月3日,北京)中国领先的移动互联网应用服务与技术提供商UC(优视科技)日前正式发布全新UC 7.1版手机浏览器。作为UC 在2010年的开年之作,UC7.1不仅为广大用户提供了针对虎年春节的软件主题,更在秉承其“速度”、“兼容”、“稳定”三大优势的同时,为用户带来更多从外至内的手机上网新体验。UC7.1的升级功能包括:全新的节日桌面与可选主题,全新的照片即拍即传、书签同步功能,更为完善的论坛浏览模式以及更加丰富的个人中心应用,让手机上网好看又好玩。 外展新颜:全新“虎年春节版”界面 在中国传统的新春佳节到来之际,UC特别设计了虎年春节的喜庆启动界面和“红运当头”节庆主题,并提供多款新年手机桌面供用户下载。让手机上网浏览也变得“年”味十足。 (红运当头“节庆主题”, 以上为在Windows Mobile平台上的界面效果) 内秀真功:论坛模式、即拍即传、书签同步一个都不能少 ·更为完善的论坛模式 UC7.1延续了UC7.0的论坛模式功能,并将这一UC独创的功能进一步完善。UC7.1的论坛模式支持包括Discuz!6.0/6.1/7.0、Phpwind 7.x 等15类论坛类型,涵盖目前网络中80%以上论坛。正愁买票回家难的你,不如试试更多的买票方式:登陆热门论坛,选择论坛模式,全天候在线关注任何车票转让信息,绝不放过任何一张带你回家的车票。 普通模式下,第三屏仍无法读取论坛内帖子内容(Symbian平台) 进入论坛模式,第一屏已经可以看到论坛内帖子内容(Symbian平台) 论坛发烧友也不必担心不守在电脑前的春节假期会让你人气大跌,UC7,1的论坛模式泡坛子,让你不在电脑前也能照抢沙发。 ·即拍即传,一时间分享你的照片 UC7.1结合手机可即时拍照的特点?开发出 “即拍即传”的特色功能。这一最具震撼力的功能大大简化了以前手机用户上传图片的繁琐过程,极大地降低了用户使用门槛,并进一步填平了Web端社区与移动终端的“鸿沟”。 (以上为在Windows Mobile平台上的操作) 用户在附件上传的选项下选择“拍照上传”,就可以即时拍摄一张照片添加入上传的附件内容。不管是过年家人、朋友聚会、美味年夜饭、或者过年旅游途中见闻……生活中的新人新事,尽可通过手机终端轻松捕捉,并与亲朋好友一起来分享属于你的特别新年! ·更丰富用户中心 在娱乐应用上,UC7.1继续保持全面整合的个人用户中心,并且聚合更多的应用与功能,满足用户“新奇好玩、即时聊天、个性应用”的全面需求:
在舟车劳顿的往返路途中,丰富的“小游戏”可以帮你打发无聊,或者用MSN、QQ、飞信来和家人聊天; 即使是在吃年夜饭时,“手机农场”也能帮助及时收菜; 就算没时间关注时事,“手机微博”照样让你随时不错过最热门的讨论话题。 ·更强大的书签同步功能 书签网上存,习惯最顺手。UC7.1的书签同步增加功能为广大用户进行浏览的个性化管理提供了稳健的基础。用户可将书签上传到UC的用户中心后台。如此一来,用户可以在任何一台手机的UC浏览器里还原书签,随时随地访问自己的收藏网站和网页。 目前,面向Windows Mobile,Windows CE,JAVA,Blackberry和Symbian平台的UC7.1版已经发布,Android平台的UC7.1版也将在近期推出。作为全球8000万用户的“移动生活伴侣”,UC把用户需求当作自己不断提升技术的不懈动力,并始终致力于通过更快捷、更全面的产品创新,给用户带来实质性的体验升级。通过温馨的界面设计,和贴合移动生活的升级功能,全新的UC7.1浏览器将进一步让用户获得更为卓越的手机上网体验。
UC:人因梦想而伟大
UC(优视科技)是中国领先的移动互联网软件技术及应用服务提供商。UC以技术为本,致力于为用户提供最便捷、最经济的移动上网产品和应用服务体系,满足用户对移动互联网生活应用的需求,最终实现用户对移动互联网的全角态应用。自2004年创立以来,UC一直专注于推动中国移动互联网事业,始终以卓越的市场前瞻力和技术创新力推动着中国移动互联网领域的发展进程。 目前,优视科技公司员工超过380人,其中研发技术人员的比例接近70%,是一家注重技术积累及发展的技术型专业公司。 同时,公司已经在北美和亚洲其他地区架设了独立服务器,服务于全球30个以上的国家和地区。截至2009年10月,全球范围内取得了下载量超过2亿次,用户8000万、活跃用户近4000万的成绩,借此UC业已成为移动互联网应用软件领域的代表企业。
UC公司产品
UC(优视科技)的核心产品是UC浏览器,通过安装使用UC浏览器,手机用户不仅能快捷访问WAP站点,更能畅游各类WWW站点,优秀的浏览体验让手机上网成为一种享受。 目前,UC浏览器已发布到7.1版本,功能日臻完善, UC浏览器已在全球范围内取得了超过2亿次下载量,月用户页面浏览量超过150亿。借此,公司业已成为手机浏览器软件领域的事实领导者。
UC未来目标
UC(优视科技)的企业理念是帮助手机用户方便快捷上网,打造移动生活平台,成为用户的“移动生活伴侣”;优视科技希望能够在5年内成为中国移动互联网领域最大的技术服务公司。作为植根于中国市场的民族软件企业,让中国的每一部手机都使用UC浏览器是我们的理想。我们期待着,在各级政府部门的关心、指导、帮助下,能为国家的信息化建设贡献更大的力量。
UC将在今年开拓海外市场
俞永福认为,UCWEB如果想成为第四个王朝的领袖企业,仅仅占领中国市场显然还很不足,而今年正是发力国际市场的最好时机。其实在这方面,挪威浏览器厂商Opera则早已进行布局,据其最新发布的数据显示,截至2009年11月,Opera Mini在全球共拥有 4170万用户,比上月增长5.3%,与去年同期相比增长超过154%。 俞永福表示,中国的互联网公司包含搜索、门户、社交网站等一直都是在对国外互联网公司进行复制,而发展周期也都晚半年至一年时间,但是中国在移动互联网将成为全世界的主导。UCWEB目前已经开发了英文和俄文两个产品,在小范围的测试过程中也看到了自身产品的竞争力,所以今年在国际化方面将有比较大的动作,很快将会正式宣布。 面对在中国市场仅发展了5年,现在就忙于开拓国际市场是否有些操之过急的质疑,俞永福表示,其实今年是最好的一个timing(时间点),现在中国的互联网公司国际化走出去基本上都是和国际巨头在进行巷战,但是移动互联网则不同,目前仍然存在快速占领的机会,而UCWEB国际化的策略也是先占领新兴市场然后再逐渐包围成熟市场,如果等到2011年以后再国际化,那可能就会面临和现在互联网公司国际化一样的难题。 他同时给出了关于中国移动互联网自己的预测,希望到明年的这个时刻可以来印证他的预测,他认为,2010年中国的手机上网用户将会增加一个亿,达到3.1-3.3亿之间,而2011年将会成为手机网民井喷的一年,用户增长量将为1.5亿,届时中国手机用户将达到4.5亿以上并且超过互联网用户。
UC将在海外上市
2006年,UCWEB获得来自董事长雷军等人的400万元天使投资,2007年,联创策源风险投资公司和晨星集团向UCWEB投资了1000万美元。2009年5月,阿里巴巴集团也对UCWEB进行了战略投资。 对于将来是否要继续融资,俞永福表示,UCWEB现在一点也不缺钱,如果只是投钱我们肯定不接受,但是如果会有对公司未来发展有很大帮助的投资者,UCWEB也会欢迎他们入股。 谈及是否已有上市计划,俞永福认为,除了创始人,如果员工在一个创业公司已经待了三-五年,那么是很难坚持下去的,UCWEB未来会选择一个好的时间点进行上市,上市地点应该是在海外。 此前,据路透社报道称,UCWEB计划三年内实现海外上市,上市地点应该是在香港证券交易所或者纳斯达克。 虽然目前还没有明确的上市时间点,但他透露UCWEB目前是全员持股,大家是为了一个共同的目标去奋斗,“UCWEB目前有420多名员工,并且是全员持股,在员工总数达到800人之前都将维持这个全员持股的计划,但是超过800人以后,就不好说了。”
编辑本段管理团队
俞永福 Mr. Yu Yongfu 优视科技CEO俞永福演讲UCWEB(优视动景)执行董事、首席执行官 2006年年底加入UCWEB公司,任执行董事,首席执行官,全面负责公司的整体运营。作为优秀的团队带头人,UCWEB在过去的两年 俞永福
时间里,在战略规划、企业管理、人才队伍建设、市场经营等方面都取得长足进步。 俞永福先生获得了“2008中国年度潜力创业人物”、“2008新媒体自主创新十大人物”等荣誉。 雷军 Mr. Leijjun UCWEB董事长(前金山公司总裁兼前CEO) 籍贯:仙桃 毕业院校:武汉大学 出生年月: 1969年2月 个人名言:人因梦想而伟大。 中国着名管理人才、经济学专家、反病毒专家
编辑本段荣誉
2009中国互联网大会荣誉合作伙伴 UC浏览器摘得“2009最佳手机浏览器”奖项桂冠 中国互联网力量之星 艾瑞新营销奖 UC浏览器喜获“优秀客户体验奖 雷军
新媒体(移动)行业十强 2009中国手机新媒体领军品牌 UC(优视科技)获新媒体殊荣 《商务周刊》中国100快公司 2009EnfoNet 移动互联网最佳应用服务提供商 “UC浏览器”正式入选“中国扶贫基金会指定手机上网捐赠平台” UC浏览器获得《程序员》&CSDN “国产软件创新奖” UC浏览器入选2008中国最有商业价值移动互联网应用十佳 07中国手机客户端软件TOP50强UCmail 新媒体(移动)行业十强 摩托罗拉最佳手机应用奖 UC浏览器喜获金枝大奖 2008中国手机客户端软件TOP10
编辑本段系统设置
显示设置: 1、浏览模式 :分适应模式和缩放模式,只针对Symbian平台、PPC/SP平台、JAVA平台提供了该设置。 2、字体大小 :可调整UC浏览器里页面显示的字体大小。 3、字体平滑 :字体展示效果,类似一种视觉的过渡;只有Symbian S60 V3版本上提供此设置。 4、文字分段 :仅针对WWW页面有效,将大页面以分页方式进行输出;如页面内容是200K,您设置分段大小为50K,那么该200K的页面将分4页来显示;适当使用,可以节省一定的运行内存,可节省一定的访问流量。 5、文本行距调整 :即调整页面上行与行之间的距离。在Symbian平台、PPC/SP平台有提供。 6、图片质量 :是WWW页面上显示图片的质量、清晰度。是UC浏览器服务器进行压缩的一种效果。无图即是不显示任何图片,其次微缩图片相对最不清晰,全彩图片相对最为清晰。图片质量越低,越能节省一定的运行空间,也越能节省一定访问流量。 7、GIF动画显示 :设置为关闭,或者选择禁止gif动画,页面上动态的gif图片就显示为静态了。禁止了gif动画也能在一定程度上节省运行空间、以及节省一定的流量(JAVA平台不支持)。 8、背景颜色 :在网页没有定义背景的情况下,对网页未定义背景的地方添加背景颜色。对于网页本身已经有背景颜色的,会显示网页原背景。该设置仅Symbian平台的支持 9、输入框匹配 :指在适应屏幕模式下,对网页输入框的宽度展示。该设置仅Symbian平台的支持 10、下划线链接 :指对链接添加下划线显示,方便辨认链接,而当字体行距设置为1时,不显示下划线。该设置仅在Symbian平台支持进行调整;Java客户端是默认不显示下划线,PPC/SP客户端是默认显示下划线,且不支持进行调整。 11、滚动条设置 :在上下滚动页面时,屏幕右边随页面上下移动的即是滚动条。

Ⅱ 用java语言, 如何实现为图片添加边框素材,就是把图片和边框素材(图片)结合


用FrontPage2002来做吧,你点点下面的连接:

具体是:
Web页面可用预定义模板来创建,也可不采用模板而在空白页上自己进行设计。创建新页面的步骤如下:
在网页视图下,选择“文件”菜单中的“新建”命令,再从其子菜单中选择“网页”命令,将弹出“新建”对话框,如图所示。

若用户要新建的网页是框架,则从“框架网页”选项卡中选择某种框架样式;否则,从“常规”选项卡中选择一种所需样式,然后单击“确定”按钮。若想建立一空白网页,可在对话框的“常规”选项卡中选择Normal Page项,或直接单击常用工具栏的“新建网页”按钮。
建议逐一试用FrontPage提供的各种模板以便熟悉它们,日后你就可以自如地利用模板创建常规Web页面,能够节省许多时间。
1.在网页中插入图形
图片往往比大量的文字讲述更具吸引力和说服力,在web页面中适当地添加图片会使网页丰富多彩,但过多地加入图片将降低页面的下载速度,特别是对通过调制解调器访问web页的用户。大多数图形都是采用压缩格式,有的调制解调器不具有压缩功能,这种调制解调器速度更慢。因此用户在加入图片时,应认真选择和进行规划。虽然图形可使web页更有趣味,但应适度使用(使用较少颜色,缩小高度和宽度或裁剪图形、降低图形的分辨率,尽可能地减少图形文件大小,如用压缩格式的文件类型)。
Web页面所使用的两种图片格式分别为GIF和JPEG,用户可选择“插入”菜单中的“图片”命令,再从其子菜单中选择“来自文件”命令,打开“图片”对话框,“图片”对话框提供了“扫描”、“使用您的web例览器来选择网页或文件”、“剪贴画”和“在您的计算机上选择一个文件”四种途径插入图片。
对于一些非GIF和JPEC格式的图片,FrontPage可以自动地将这些文件转换成GIF或JPEG格式。

2.在网页中插入水平线

水平线可以在网页上清晰地划分界限,而且对用户网页的布局起着重要的作用。添加一条水平线,可以通过“插入”菜单中选择“水平线”命令添加。在默认状态下水平线是灰色的,用户可以像改变文本颜色一样改变水平线的颜色。改变水平线的颜色有两种方法(必须在不加主题的情况下):
(1)双击该水平线,将显示“水平线属性”对话框。在对话框的“颜色”项,选择下拉列表,从中选择合适的颜色,单击“确定”按钮。
(2)用鼠标右键单击这条水平线,从快捷菜单中选择“水平线属性”命令,再从对话框中选择一个合适的颜色。
使用框架
--------------------------------------------------------------------------------

框架是把Web浏览器的视窗分成几个部分,每个部分都是独立的Web页面,这样便可同时显示多个页面。
可以很容易地用FrontPage创建一个多框架的web页面。为了创建具有框架的Web页面,可从“文件”菜单的“新建”子菜单中选择“网页”命令,弹出“新建”对话框,选择“框架网页”选项卡。
在左边的列表中可选择不同类型的框架模板,选定模板后,按“确定”按钮即可创建一个具有框架的网页。
在创建有框架的Web页面时,应注意有些web浏览器不支持框架。虽然使用不能显示框架的浏览器的用户已很少,为确保这些用户仍然能够浏览到Web站点上的内容,可以填上要告诉那些低版本浏览器的使用者的话,例如请对方更换浏览器等。
在新建的框架的窗口中,单击“设置初始页”按钮将会弹出“创建超链接”对话框,可以链接到一个指定页面;单击“新建网页”按钮将创建一个新页面,然后在该页面内对该页进行编辑。在编辑页面时,若感觉页面被放在一个狭窄的框架中太拥挤,可选择“框架”菜单中的“在新窗口中打开网页”命令,这样便打开一个新的满屏窗口,可以自由地在页面中增加内容。
利用FrontPage的框架页面模板在Web页面上引入了框架布局,我们还可以在此基础上,根据需要进行进一步的设计。
1、增加新框架

要给框架页面增加新框架,就是像拆分表格的单元格一样,把一个框架分为两个框架。 其操作如下:
(1)按住Ctrl键,将鼠标放在框架边框上,当鼠标变为上下箭头时,可把边框拖到一个新位置,当松开鼠标按钮时,一个新的空白内容的框架就形成了。
(2)也可以通过命令来操作:首先单击要拆分的框架内部,选“框架”菜单中的“拆分框架”命令,在弹出的“拆分框架”对话框中单击“拆分成列”或“拆分成行”单选按钮,单击“确定”按钮即可。

2.删除框架

若框架页面看起来太乱,可删除某些框架。要删除一个框架,可先单击该框架选择它,再选择“框架”菜单中的“删除框架”命令即可。

3.改变框架属性

在设置好框架的整体布局后,我们还可以对每一框架的具体属性进行设置,操作如下:
(1)单击需设置属性的框架,选择“框架”菜单中的“框架属性”,则弹出“框架属性”对活框。

(2)在对话框的“名称”文本框中可输入框架名,这样便于识别不同的框架;在“选项”区域中,若选中“在例览器中可以调大小”复选框,则客户在浏览站点时,可重新定义框架尺寸,通过在“显示滚动条”下拉列表框中选择不同的描述项,可设置让滚动条是否出现。
(3)在“框架大小”区域中,可设置框架大小,可以定义一个绝对像素值或相对于浏览器窗口的百分比,若要用浏览器来设置相对于该页面中框架的尺寸,可选“相对”;在“边距”区域中,可设置内容页面与框架边框分隔的像素数值。
(4)要改变开始页面,可以在“初始网页”文本框中输入一个新的页面名字或URL。
(5)单击“框架网页”按钮,则弹出“网页属性”对话框。
(6)在该对话框的“框架”选项卡中,在“框架间距”文本框中,可输入以像素为单位的边框宽度;若要使框架边框消失,则不要选中“显示边框”复选框。
(7)单击“确定”按钮,关闭“网页属性”对话框,再单击“确定”按钮,关闭“框架属件”对话框,完成框架属性设置。
动态网页

--------------------------------------------------------------------------------

DHTML是动态网页的意思,它其实并不是一个标准的术语。事实上没有一种技术叫作DHTML。DHTML是利用CSS(层叠样式表),JavaScript,HTML等技术而建立的能与访问者产生互动的网页。比如在动态网页里,当访问者单击了某一张图片后,这张图片会自动的移动,这就是DHTML效果。也就是说,当网页下载完毕后,它无需再与服务器连接就能产生变化了。FrontPage2000提供了一套容易制作动态网页的方法,你可以建立起属于自己特色的动态网页。

1、使用DHTML的基本步骤

1).在页面点选需要使用DHTML的对象,比如文本,图片。对于文本需要拖曳鼠标选定;

2).在DHTML工具栏,选择通过开启的下拉列表选择一种事件,文本和图片所具有的事件是不同的;接下来再应用下拉列表选择一种效果;最后选择该效果的的实现方法;

3).当你为对象使用了DHTML后,保存该页面并预览,你会发现你选定的对象按照你设置的DHTML的效果出现;

4).如果想删除某一个对象的DHTML效果,先选定该对象,然后单击DHTML工具栏上的删除效果图标即可。

2、DHTML的事件

在DHTML制作中,我们听得最多的是“事件”这个术语。什么是“事件”呢,顾名思义,就是发生的一件事情,比如你用手打开门,那么这就是一个事件。换到网页制作中,开门变成了单击,也就是说,访问者单击了一个链接,那么出现了事件的结果,门被打开了。

在FrontPage2000中,当我们打开DHTML效果工具栏后,点选文本或者图片会产生不同事件。但它们的施用方法是一样的,下面我们以文本举例:

我们先在编辑器里输入一段文本,比如:网页陶吧,然后继续下面的三个步骤:

选定一段需要产生DHTML效果的文本,这里是:网页陶吧。从DHTML效果工具栏的开启下拉列表选择一个事件。这里对于文本我们只有“网页加载”这个事件。“网页加载”就是当网页第一次装入的时侯发生的事件,它不需要用户利用鼠标去触发它,而只需要访问者利用浏览器打开它的时侯就会产生预设的动态效果。

选择好事件后,我们要在应用下拉列表里选择一个该事件的应用效果。在该列表下有七种可以采用的效果,我们选择飞入。

对于应用效果会有不同的方法产生。比如当你选择的应用效果是“飞入”的时侯,文本可以从底部飞入,可以从左边飞入,也可以从右边飞入,这些就是方法。在这个下拉列表里并没有注明这个术语。有的应用效果是没有方法的,比如波动。我们这里选择从底部飞入。

最后保存该页面并预览,你会发现网页陶吧这个四个字在网页第一次加载后从底部飞入。当然,你也可以尝试其它DHTML效果。对于选定图片,你会在DHTML效果工具栏的开启下拉列表看到新的事件,单击和鼠标悬停,它们会有各自的应用效果和实现方法。你可以每一个尝试一下,这样你就能明白这些事件和应用效果和方法之间的关系。

3、DHTML的小技巧

DHTML兼容性

利用FrontPage2000制作的DHTML网页只能被InternetExplorer4.0或以上版本完全正常浏览。对于图片的DHTML效果,Netscape Communicator 4.0或以上版本也可以浏览。

禁止DHTML

如果想禁用DHTML效果,点选菜单工具/网页选项,在打开的对话框里选择兼容性标签,取消动态HTML前的复选框里勾,这样DHTM效果被禁用。

快速使用DHTML

一般情况,在你没有选定某一个对象的情况下,你只需要把鼠标移动到对象的左边或者右边单击一下就可以使用DHTML效果了。

4、网页过渡

网页过渡是指当你进入或者离开一个网页的时侯所产生的效果的这个过程。比如你从某一页进入另一页,你会发现当前页慢慢向中间合拢,同时出现了另一个新的页面,直到当前页合拢消失而最后出现新的页面。如果你想使用网页过渡,可以按照以下步骤:

1).打开想使用过渡效果的页面,或者新建立一个页面。点选菜单格式/网页过渡,打开网页过渡对话框;

2).在事件下拉列表里选择一个事件,我们选择进入网页。大家要注意,当你为某页和站点都设置了过渡效果时,网页将比站点过渡效果优先;

3).在周期文本框里输入持续的时间,然后在过渡效果列表框里点选一个效果,单击确定。利用浏览器打开该页面,因为我们选择的网页过渡是进入网页,所以当你打开该页时你就能看到过渡效果了。

利用DHTML效果的确是吸引访问者的有力利器,但如果你不愿意和复杂的代码打交道,那么FrontPage2000为你预设了许多DHTML的效果。你要做的仅仅是选定需要动态效果的对象,比如文字,图片,然后利用“傻瓜”式的操作就可以让你的网页动起来。
Web页有自己的一组属性,通过选择“文件”菜单中的“属性”或通过鼠标右键单击页内任何位置,选择快捷菜单中的“网页属性”命令,可以打开“网页属性”对话框,在“常规”选项卡中,各项设置含义如下:

·位置:指出页的完整URL。

·标题:显示的页标题,即在HIML中显示在<head>元素中的<tit1e>标签内。

·基位置:在此位置可输入一个URL,可将这页中使用的相对URL的超链接总指向同一正确的目标,通过对一个URL的说明,可以在不移动相对URL中所有目标的情况下,移动这个页。

·默认的目标框架:定义不规定框架的页中所有超链接的默认框架。

·背景音乐:加入背景音乐,当浏览器打开该页时,会同时播放音乐。

在其它选项卡中还可对页边距、语言等系统参数进行设置。
建立超链接

--------------------------------------------------------------------------------

超链接(HyperLink)的出现使网上浏览变得更加便捷,只须用鼠标轻轻点击,便能轻松地从一个页面跳转到另一个页面,从一个Web站点跳到另一个Web站点,从一个国家跳到另一个国家。超链接就是一些特殊的文本或图像,是其它页面的入口。
1.与当前web站点的页面建立超链接
(1)在FrontPage中打开要建立超链接的页面(若是新建页面,则要肯定该页面己被保存),选中超链接源,超链接源可以是一个字符、一个单词、一句话或一幅图片等。
(2)选择“插入”菜单中的“超链接”命令,或单击“常用”工具栏的“超链接”按钮,则弹出“创建超链接”对话框(如图),在该对话框中列出了当前FrontPage中打开的Web站点中的文件夹和文件。

(3)在该对话框的文件列表中,选择要建立链接的目标文件。
(4)单击“确定”按钮,超链接建成。

2.与本机中的其它文件建立超键接
(1)选择超链接源,打开“创建超链接”对话框。
(2)在该对话框中单击“制作一个链接到您计算机上文件的超链接”按钮,然后从弹出的对话框中找到自己所要链接的文件,选中它。
(3)单击“确定”按钮,超链接建成。

3.与world wide web上某一站点建立超链接
(1)在FrontPage中打开欲建超链接的页面,选定超链接源。
(2)选“插入”菜单中的“超链接”或单击常用工具栏的“超链接”按钮,弹出“创建超链接”对话框。
(3)在“URL”文本框中,输入超链接目标的URL。
(4)单击“确定”按钮。
格式化文本

--------------------------------------------------------------------------------

1.输入文本
从总体而言,文本仍是网页中的主体内容,在FrontPage中输入文本与在Word中输入文本非常类似。
(1).需要加入空行或换段时才使用Enter键,当输入文本达到所定义的右边界时,将自动换行。若录入文字有错可按Backspace键清除错误,重新录入。
(2).可在文本中任意位置处插入新文本内容,操作时把鼠标指针定位到欲加文本处即可添加文本。
(3).可进行覆盖式录入,即先用鼠标选中要替换的文本,然后直接录入文本。
(4).可通过单击常用工具栏的“显示所有”按钮,让段落标记在屏幕上显示或隐藏,借助段落标记可清楚地看到段与段之间的空行。

2.文本的选择

(1).选择一个单词或多个单词:选择一个单词只需在该单词上双击鼠标即可,按住鼠标左键在要选单词上拖动即可选择多个单词。选择字与选择多个单词的方法相同。
(2).选择一行文字:一行文字就是在屏幕上占据一行空间的文本。将鼠标箭头移到行的最左边,当光标箭头变为指向左边时,单击鼠标左键,便可选择该行。
(3).选择一个段落:将鼠标箭头移到该段落的最左边,当光标箭头变为指向左边时,双击鼠标左键,或按下ALT键,再用鼠标单击想要选择的段落,即可选择该段落。

3.删除、拷贝和移动文本或图片

(1).删除:删除插入点左侧的一个字符,按Backspace键;删除插入点右侧的一个字符,按Delete键;删除插入点右侧的一个单词,按Ctrl+De1ete键;剪切所选内容并保行到“剪贴板”,按Ctrl+X键;删除所选内容按De1e1e键或选择“编辑”菜单中的“删除”命令。
(2).拷贝:拷贝所选文本或图形到剪贴板,方法是:选中文本或图形,然后按Ctrl+C键或从菜单上选择“编辑”菜单中的“复制”菜单命令,也可直接单击工具栏中的“复制”按钮。
(3).移动文本或图片:选择想要移动的文本或图片,再拖曳到要插入的位置,释放鼠标,所选对象就移到目的地。如果先将选择的文本或图片“剪切”,然后再“粘贴”到指定区域,也可将其移动。
(4).通过“撤销”取消误操作:如果用户在不小心的情况下错误地执行操作,单击工具栏上的“撤销”命令按钮,可以取消用户执行过的操作,或从菜单栏选择“编辑”菜单中的“撤销”菜单命令,或按Cir1+Z键。

4.加入标题

出于页面内容层次的需要,有时在页面中要加入一些小标题。 HTML语言规范采用6级标题,各级标题采用文字不同字号来区分,其中标题1为大标题,其它依次为中小标题。要设定某一级标题,可以在FrontPage格式工具栏中的“样式”下拉列表中选中一个标题等级,然后在光标处输入标题文字即可;或者先输入文字,并选定该文字,然后在“样式”下拉列表中选定某一级标题。标题结束后,将下拉列表中的格式改回原来的“普通”,再进行其它内容的输入。

5.改变字体及设置字体效果
FrontPage在通常情况下,字体为“Times New Roman”。若用户的操作系统是中文Windows95/98或Windows NT,中文默认字体为“宋体”,文字大小采用默认的字号。若要设定不同的字体,可先选择要改变的文字,然后在格式工具栏里的“字体”下拉菜单中选择一种字体,或从菜单栏选择“格式”菜单中的“字体”菜单命令,通过“字体”对话框来设置,并可设定字体样式、大小等。当字体改变后,形式将一直保持,直到用户又重新设置新的字体为止。
(1).设置字体颜色:选中文字,单击格式工具栏上的“文本颜色”按钮的下拉箭头,就会弹出其下拉列表,在“标准颜色”中选择所需颜色;若没有,可选择“更多的颜色”命令,然后从弹出的对话框中选择。
(2).设置字体样式:要对需要的文字进行粗体、斜体和下划线处理,只要选择要处理的文字,从格式工具栏上单击“加粗”、“斜体”或“下划线”按钮即可。想解除此效果,可以选中文字,再次按相应的按钮就可以解除效果,恢复到正常字体。在制作网页时,一般不采用“下划线”效果,因为下划线在一些网页中都表示有超链接。
(3).字体加线效果:共有两种:“下划线”可以在选中的文字下面划一条线;“删除线”在文字中间贯穿划一条线。
(4).特殊的文字风格:当选中的文字需要使用某些特殊风格,如“闪烁”风格,可通过选择“字体”对话框中“字体”选项卡(如图)的“效果”区域的所需选项,但有的文字特殊效果只有在浏览器中才能体现出来。

6.文本的缩进
文本的缩进就是使文本左边、右边显示空白,这种效果有利于对关键段落加强说明。要对一个已有的段落运用缩进的方式,首先选中段落,然后在格式工具栏上单击“增加缩进”按钮,段落左边和右边分别缩进一段距离,连续按“增加缩进”按钮,缩进将进一步加大。这种在文字两边同时缩进的方式也称之为双向缩进。若缩进的空间太大,可以通过单击“减少缩进”按钮来减少缩进的空间。

7.文本对齐方式
若输入的文字是从该页的左边距开始,并逐渐向右延伸,且到了行满以后又折回下行左边(左边距处)重新开始,这就是左对齐。有些文字需要居中方式,比如标题之类的文字;而有些文字需要放到右边,这些可通过格式工具栏上的“向左对齐”、“居中”和“向右对齐”按钮来实现:,不同的对齐方式可以使文本呈现不同的显示样式,而且可以清楚地表明用户想要说明的问题,使网页整体保持协调。 要设定文本的居中、左齐或右齐方式,须先选择好要设置的文本,再单击相应按钮即可。如果用户想回到原始状态的对齐的方式,应先选定该文本,再单击格式工具栏上相应的对齐按钮。

8、加入项目符号或列表编号

有一些列表前面有加圆点的符号,说明一条条的列表内容,这在专业排版中称为项目符号,在Web页面中加入项目符号或列表编号可使内容有条理、更清楚,可以通过列表把大量内容简要地描述出来,便于读者抓住重点。还有另外一种形式即列表编号,可以用来描述一个问题的处理步骤和顺序,这两种处理形式在FrontPage中运用起来很方便。
加入项目符号或列表编号与在Word中的操作很类似。先选定文本,用户可以在格式工具栏按相应的按钮,或选“格式”菜单中的“项目符号和编号方式”命令,打开项目符号和编号方式对话框(如图),从中选定不同格式的列表项目。

在FrontPage中新建的两个文本行之间都有一个空行,如果用户在输入或添加项目时不想每两行之间都出现一个空行,可以在格式工具栏上单击“项目符号”或“编号方式”按钮。该按钮为下凹状后同时出现第一个项目符号,输入需要的文字后,按“回车”键,然后在自动出现的下一个项目符号后继续输入。
FrontPage还可以通过提供列表编号或项目符号的方式对列表项进行排列。操作方法与上一段所述相同。
如果在所有项目输入完毕后,以下的内容不再希望添加编号或项目符号,可两次回车,则停止编号或停止添加项目符号。若想改变编号的形式或不想从1开始,可通过在列表符号上单击鼠标右键,在弹出的快捷菜单上选择“列表属性”命令,在弹出的“列表属性”对话框中选择“号码”选项卡,选择所需的编号风格,再在右边的“初始号码”微调器中调整起始编号,在调好之后单击“确定”按钮即可。

Ⅲ java 生成pdf 怎么设置下划线

xunjiePDF编辑器工具-----选择“自定义工具栏”,选择想要显示的工具,然后可以拖动到菜单栏下方,方面以后或多次使用。

1、文字版PDF:清晰度比较高,文件小,可以单独选择复制每个文字,也可以选中具体的文字和段落,比较方便。
注释----选下划线类型,比如波浪线、下划直线、文本标注,选中想要划下划线的那些文字。
在下划线条区域,鼠标变成“黑三角",右键---属性,可以改变颜色,但好像不能改粗细,也不能保持默认。本人也纳闷。
2、扫描版PDF:网上这类文件居多,清晰度有好有坏,文件比较大,就是通过扫描上来的图片,不能选中,需要专门的文字识别软件,识别并导出文字word。
注释------绘图------在想要的文本下,画线条、椭圆等图形,在线条区域,右键---属性------可以改变颜色、粗细。 也可以进行文本标注

Ⅳ 字符串距离

又称Levenshtein距离,是编辑距离(edit distance)的一种。指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。

一种局部敏感hash,它也是Google公司进行海量网页去重使用的主要算法
传统的Hash算法只负责将原始内容尽量均匀随机地映射为一个签名值,原理上仅相当于伪随机数产生算法。传统的hash算法产生的两个签名,如果原始内容在一定概率下是相等的;如果不相等,除了说明原始内容不相等外,不再提供任何信息,因为即使原始内容只相差一个字节,所产生的签名也很可能差别很大。所以传统的Hash是无法在签名的维度上来衡量原内容的相似度,而SimHash本身属于一种局部敏感哈希算法,它产生的hash签名在一定程度上可以表征原内容的相似度。
我们主要解决的是文本相似度计算,要比较的是两个文章是否相似,当然我们降维生成了hash签名也是用于这个目的。看到这里估计大家就明白了,我们使用的simhash就算把文章中的字符串变成 01 串也还是可以用于计算相似度的,而传统的hash却不行。

流程

在信息论中,两个等长字符串之间的汉明距离(英语:Hamming distance)是两个字符串对应位置的不同字符的个数。换句话说,它就是将一个字符串变换成另外一个字符串所需要替换的字符个数。
汉明重量是字符串相对于同样长度的零字符串的汉明距离,也就是说,它是字符串中非零的元素个数:对于二进制字符串来说,就是1的个数,所以11101的汉明重量是4。
例如:
1011101与1001001之间的汉明距离是2

xlturing/simhashJava

Ⅳ 哪个高手帮帮忙,急用!.

“斐波那契数列”的发明者,是意大利数学家列昂纳多·斐波那契(Leonardo Fibonacci,生于公元1170年,卒于1240年。籍贯大概是比萨)。他被人称作“比萨的列昂纳多”。1202年,他撰写了《珠算原理》(Liber Abaci)一书。他是第一个研究了印度和阿拉伯数学理论的欧洲人。他的父亲被比萨的一家商业团体聘任为外交领事,派驻地点相当于今日的阿尔及利亚地区,列昂纳多因此得以在一个阿拉伯老师的指导下研究数学。他还曾在埃及、叙利亚、希腊、西西里和普罗旺斯研究数学。
斐波那契数列指的是这样一个数列:1,1,2,3,5,8,13,21……
这个数列从第三项开始,每一项都等于前两项之和。它的通项公式为:(1/√5)*{[(1+√5)/2]^n - [(1-√5)/2]^n}(又叫“比内公式”,是用无理数表示有理数的一个范例。)【√5表示根号5】
很有趣的是:这样一个完全是自然数的数列,通项公式居然是用无理数来表达的。
[编辑本段]【该数列有很多奇妙的属性】
比如:随着数列项数的增加,前一项与后一项之比越逼近黄金分割0.6180339887……
如果你看到有这样一个题目:某人把一个8*8的方格切成四块,拼成一个5*13的长方形,故作惊讶地问你:为什么64=65?其实就是利用了斐波那契数列的这个性质:5、8、13正是数列中相邻的三项,事实上前后两块的面积确实差1,只不过后面那个图中有一条细长的狭缝,一般人不容易注意到。
5、-2.4、2.6、0.2、2.8、3、5.8、8.8、14.6……等,你将发现随着数列的发展,前后两项之比也越来越逼近黄金分割,且某一项的平方与前后两项之积的差值也交替相差某个值。如果所有的数都要求是自然数,能找出被任意正整数整除的项的此类如果任意挑两个数为起始,比如5、-2.4,然后两项两项地相加下去,形成数列,必然是斐波那契数列的某项开始每一项的倍数,如4,6,10,16,26……(从2开始每个数的两倍)。
斐波那契数列的第n项同时也代表了集合{1,2,...,n}中所有不包含相邻正整数的子集个数。
斐波那契数列(f(n),f(0)=0,f(1)=1,f(2)=1,f(3)=2……)的其他性质:
1.f(0)+f(1)+f(2)+…+f(n)=f(n+2)-1
2.f(1)+f(3)+f(5)+…+f(2n-1)=f(2n)-1
3.f(0)+f(2)+f(4)+…+f(2n)=f(2n+1)-1
4.[f(0)]^2+[f(1)]^2+…+[f(n)]^2=f(n)·f(n+1)
5.f(0)-f(1)+f(2)-…+(-1)^n·f(n)=(-1)^n·[f(n+1)-f(n)]+1
6.f(m+n)=f(m-1)·f(n-1)+f(m)·f(n)
7.[f(n)]^2=(-1)^(n-1)+f(n-1)·f(n+1)
8.f(2n-1)=[f(n)]^2-[f(n-2)]^2
9.3f(n)=f(n+2)+f(n-2)
在杨辉三角中隐藏着斐波那契数列
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
过第一行的“1”向左下方做45度斜线,之后做直线的平行线,将每条直线所过的数加起来,即得一数列1、1、2、3、5、8……
(1)细察下列各种花,它们的花瓣的数目具有斐波那契数:延龄草、野玫瑰、南美血根草、大波斯菊、金凤花、耧斗菜、百合花、蝴蝶花。
(2)细察以下花的类似花瓣部分,它们也具有斐波那契数:紫宛、大波斯菊、雏菊。
斐波那契数经常与花瓣的数目相结合:
3………………………百合和蝴蝶花
5………………………蓝花耧斗菜、金凤花、飞燕草
8………………………翠雀花
13………………………金盏草
21………………………紫宛
34,55,84……………雏菊
(3)斐波那契数还可以在植物的叶、枝、茎等排列中发现。例如,在树木的枝干上选一片叶子,记其为数0,然后依序点数叶子(假定没有折损),直到到达与那息叶子正对的位置,则其间的叶子数多半是斐波那契数。叶子从一个位置到达下一个正对的位置称为一个循回。叶子在一个循回中旋转的圈数也是斐波那契数。在一个循回中叶子数与叶子旋转圈数的比称为叶序(源自希腊词,意即叶子的排列)比。多数的叶序比呈现为斐波那契数的比。
(4)斐波那契数列与黄金比值
相继的斐波那契数的比的数列:
它们交错地或大于或小于黄金比的值。该数列的极限为。这种联系暗示了无论(尤其在自然现象中)在哪里出现黄金比、黄金矩形或等角螺线,那里也就会出现斐波那契数,反之亦然。
[编辑本段]【与之相关的数学问题】
1.排列组合.
有一段楼梯有10级台阶,规定每一步只能跨一级或两级,要登上第10级台阶有几种不同的走法?
这就是一个斐波那契数列:登上第一级台阶有一种登法;登上两级台阶,有两种登法;登上三级台阶,有三种登法;登上四级台阶,有五种登法……
1,2,3,5,8,13……所以,登上十级,有89种
2.数列中相邻两项的前项比后项的极限.
就是问,当n趋于无穷大时,F(n)/F(n+1)的极限是多少?
这个可由它的通项公式直接得到,极限是(-1+√5)/2,这个就是所谓的黄金分割点,也是代表大自然的和谐的一个数字。
3.求递推数列a(1)=1,a(n+1)=1+1/a(n).的通项公式.
由数学归纳法可以得到:a(n)=F(n+1)/F(n).将菲波那契数列的通项式代入,化简就得结果。
[编辑本段]【斐波那契数列别名】

斐波那契数列又因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”。
斐波那契数列
一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有兔都不死,那么一年以后可以繁殖多少对兔子?
我们不妨拿新出生的一对小兔子分析一下:
第一个月小兔子没有繁殖能力,所以还是一对;
两个月后,生下一对小兔民数共有两对;
三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是三对;
------
依次类推可以列出下表:
经过月数:---0---1---2---3---4---5---6---7---8---9--10--11--12
兔子对数:---1---1---2---3---5---8--13--21--34--55--89-144-233
表中数字1,1,2,3,5,8---构成了一个数列。这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。
这个特点的证明:每月的大兔子数为上月的兔子数,每月的小兔子数为上月的大兔子数,即上上月的兔子数,相加。
这个数列是意大利中世纪数学家斐波那契在<算盘全书>中提出的,这个级数的通项公式,除了具有a(n+2)=an+a(n+1)/的性质外,还可以证明通项公式为:an=1/√[(1+√5/2) n-(1-√5/2) n](n=1,2,3.....)
[编辑本段]【斐波那挈数列通项公式的推导】
斐波那契数列:1,1,2,3,5,8,13,21……
如果设F(n)为该数列的第n项(n∈N+)。那么这句话可以写成如下形式:
F(0) = 0,F(1)=F(2)=1,F(n)=F(n-1)+F(n-2) (n≥3)
显然这是一个线性递推数列。
通项公式的推导方法一:利用特征方程
线性递推数列的特征方程为:
X^2=X+1
解得
X1=(1+√5)/2, X2=(1-√5)/2.
则F(n)=C1*X1^n + C2*X2^n
∵F(1)=F(2)=1
∴C1*X1 + C2*X2
C1*X1^2 + C2*X2^2
解得C1=1/√5,C2=-1/√5
∴F(n)=(1/√5)*{[(1+√5)/2]^n - [(1-√5)/2]^n}【√5表示根号5】
通项公式的推导方法二:普通方法
设常数r,s
使得F(n)-r*F(n-1)=s*[F(n-1)-r*F(n-2)]
则r+s=1, -rs=1
n≥3时,有
F(n)-r*F(n-1)=s*[F(n-1)-r*F(n-2)]
F(n-1)-r*F(n-2)=s*[F(n-2)-r*F(n-3)]
F(n-2)-r*F(n-3)=s*[F(n-3)-r*F(n-4)]
……
F(3)-r*F(2)=s*[F(2)-r*F(1)]
将以上n-2个式子相乘,得:
F(n)-r*F(n-1)=[s^(n-2)]*[F(2)-r*F(1)]
∵s=1-r,F(1)=F(2)=1
上式可化简得:
F(n)=s^(n-1)+r*F(n-1)
那么:
F(n)=s^(n-1)+r*F(n-1)
= s^(n-1) + r*s^(n-2) + r^2*F(n-2)
= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) + r^3*F(n-3)
……
= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) +……+ r^(n-2)*s + r^(n-1)*F(1)
= s^(n-1) + r*s^(n-2) + r^2*s^(n-3) +……+ r^(n-2)*s + r^(n-1)
(这是一个以s^(n-1)为首项、以r^(n-1)为末项、r/s为公差的等比数列的各项的和)
=[s^(n-1)-r^(n-1)*r/s]/(1-r/s)
=(s^n - r^n)/(s-r)
r+s=1, -rs=1的一解为 s=(1+√5)/2, r=(1-√5)/2
则F(n)=(√5)*{[(1+√5)/2]^n - [(1-√5)/2]^n}
[编辑本段]【C语言程序】

main()
{
long fib[40] = {0,1};
int i;
for(i=2;i<40;i++)
{
fib[i ] = fib[i-1]+fib[i-2];
}
for(i=0;i<40;i++)
{
printf("F%d==%d\n", i, fib);
}
return 0;
}
[编辑本段]【C#语言程序】
public class Fibonacci
{
//NormRen
static void Main(string[] args)
{
int x = 0, y = 1;
for (int j = 1; j < 10; j++, y = x + y, x = y - x)
Console.Write(y + " ");
}
}
[编辑本段]【Java语言程序】
public class Fibonacci
{
public static void main(String[] args)
{
int x=1,y=1;
System.out.println(x+" ");
for(int i=1;i<=20;i++)
{
System.out.println(y+" ");
y=x+y;x=y-x;
}
}
}
[编辑本段]【Pascal语言程序】
递推:
var
fib: array[0..40]of longint;
i: integer;
begin
fib[0] := 1;
fib[1] := 1;
for i:=2 to 39 do
fib[i ] := fib[i-1] + fib[i-2];
for i:=0 to 39 do
write('F', i, '=', fib[i ]);
end.
递归:
function fib(n:integer):longint;
begin
if (n=1) then exit(0);
if (n=2) then exit(1);
fib:=fib(n-2)+fib(n-1);
end;
[编辑本段]【PL/SQL程序】
declare i number :=0;
j number :=1;
x number :=1;
begin
while x<1000
loop
dbms_output.put_line(x);
x:=i+j;
i:=j;
j:=x;
end loop;
end;
[编辑本段]【数列与矩阵】
对于斐波那契数列1,1,2,3,5,8,13…….有如下定义
F(n)=f(n-1)+f(n-2)
F(1)=1
F(2)=1
对于以下矩阵乘法
F(n+1) = 1 1 * F(n)
F(n) 1 0 F(n-1)
它的运算就是
F(n+1)=F(n)+F(n-1)
F(n)=F(n)
可见该矩阵的乘法完全符合斐波那契数列的定义
设1 为B,1 1为C
1 1 0
可以用迭代得到:
斐波那契数列的某一项F(n)=(BC^(n-2))1
这就是斐波那契数列的矩阵乘法定义.
另矩阵乘法的一个运算法则A¬^n(n为偶数)=A^(n/2)* A^(n/2).
因此可以用递归的方法求得答案.
时间效率:O(logn),比模拟法O(n)远远高效。
代码(PASCAL)
{变量matrix是二阶方阵, matrix是矩阵的英文}
program fibonacci;
type
matrix=array[1..2,1..2] of qword;
var
c,cc:matrix;
n:integer;
function multiply(x,y:matrix):matrix;
var
temp:matrix;
begin
temp[1,1]:=x[1,1]*y[1,1]+x[1,2]*y[2,1];
temp[1,2]:=x[1,1]*y[1,2]+x[1,2]*y[2,2];
temp[2,1]:=x[2,1]*y[1,1]+x[2,2]*y[2,1];
temp[2,2]:=x[2,1]*y[1,2]+x[2,2]*y[2,2];
exit(temp);
end;
function getcc(n:integer):matrix;
var
temp:matrix;
t:integer;
begin
if n=1 then exit(c);
t:=n div 2;
temp:=getcc(t);
temp:=multiply(temp,temp);
if odd(n) then exit(multiply(temp,c))
else exit(temp);
end;
procere init;
begin
readln(n);
c[1,1]:=1;
c[1,2]:=1;
c[2,1]:=1;
c[2,2]:=0;
if n=1 then
begin
writeln(1);
halt;
end;
if n=2 then
begin
writeln(1);
halt;
end;
cc:=getcc(n-2);
end;
procere work;
begin
writeln(cc[1,1]+cc[1,2]);
end;
begin
init;
work;
end.
[编辑本段]【数列值的另一种求法】
F(n) = [ (( sqrt ( 5 ) + 1 ) / 2) ^ n ]
其中[ x ]表示取距离 x 最近的整数。
[编辑本段]【数列的前若干项】
1、 1
2 、1
3 、2
4 、3
5 、5
6 、8
7 、13
8 、21
9 、34
10、 55
11 、89
12 、144
13 、233
14 、377
15 、610
16 、987
17 、1597
18 、2584
19 、4181
20 、6765
......
斐波那契弧线
斐波那契弧线,第一,此趋势线以二个端点为准而画出,例如,最低点反向到最高点线上的两个点。三条弧线均以第二个点为中心画出,并在趋势线的斐波纳契水平:38.2%, 50%和61.8%交叉。
斐波纳契弧线,是潜在的支持点和阻力点水平价格。斐波纳契弧线和斐波纳契扇形线常常在图表里同时绘画出。支持点和阻力点就是由这些线的交汇点得出。
要注意的是弧线的交叉点和价格曲线会根据图表数值范围而改变因为弧线是圆周的一部分,它的形成总是一样的。
斐波那契扇形线
斐波那契扇形线,例如,以最低点反向到最高点线上的两个端点画出的趋势线。然后通过第二点画出一条“无形的(看不见的)”垂直线。然后,从第一个点画出第三条趋势线:38.2%, 50%和61.8%的无形垂直线交叉。
这些线代表了支撑点和阻力点的价格水平。为了能得到一个更为精确的预报,建议和其他斐波纳契工具一起使用。
[编辑本段]【斐波那契数列的应用】
一位魔术师拿着一块边长为8英尺的正方形地毯,对他的地毯匠朋友说:“请您把这块地毯分成四小块,再把它们缝成一块长13英尺,宽5英尺的长方
形地毯。”这位匠师对魔术师算术之差深感惊异,因为商者之间面积相差达一平方英尺呢!可是魔术师竟让匠师用图2和图3的办法达到了他的目的!
这真是不可思议的事!亲爱的读者,你猜得到那神奇的一 平方英尺究竟跑到哪儿去呢?
斐波那契数列在自然科学的其他分支,也有许多应用。例如,树木的生长,由于新生的枝条,往往需要一段“休息”时间,供自身生长,而后才能萌发新枝。所以,一株树苗在一段间隔,例如一年,以后长出一条新枝;第二年新枝“休息”,老枝依旧萌发;此后,老枝与“休息”过一年的枝同时萌发,当年生的新枝则次年“休息”。这样,一株树木各个年份的枝桠数,便构成斐波那契数列。这个规律,就是生物学上着名的“鲁德维格定律”。
另外,观察延龄草,野玫瑰,南美血根草,大波斯菊,金凤花,耧斗菜,百合花,蝴蝶花的花瓣.可以发现它们花瓣数目具有斐波那契数:3,5,8,13,21……
斐波那契螺旋
具有13条顺时针旋转和21条逆时针旋转的螺旋的蓟的头部
具有13条逆时针旋转和21条逆时针旋转的螺旋的蓟的头部
这些植物懂得斐波那契数列吗?应该并非如此,它们只是按照自然的规律才进化成这样。这似乎是植物排列种子的“优化方式”,它能使所有种子具有差不多的大小却又疏密得当,不至于在圆心处挤了太多的种子而在圆周处却又稀稀拉拉。叶子的生长方式也是如此,对于许多植物来说,每片叶子从中轴附近生长出来,为了在生长的过程中一直都能最佳地利用空间(要考虑到叶子是一片一片逐渐地生长出来,而不是一下子同时出现的),每片叶子和前一片叶子之间的角度应该是222.5度,这个角度称为“黄金角度”,因为它和整个圆周360度之比是黄金分割数0.618033989……的倒数,而这种生长方式就决定了斐波那契螺旋的产生。向日葵的种子排列形成的斐波那契螺旋有时能达到89,甚至144条。

Ⅵ 自然语言处理中的N-Gram模型详解

N-Gram(有时也称为N元模型)是 自然语言 处理中一个非常重要的概念,通常在NLP中,人们基于一定的语料库,可以利用N-Gram来预计或者评估一个句子是否合理。另外一方面,N-Gram的另外一个作用是用来评估两个字符串之间的差异程度。这是模糊匹配中常用的一种手段。本文将从此开始,进而向读者展示N-Gram在自然语言处理中的各种powerful的应用。
基于N-Gram模型定义的字符串距离
利用N-Gram模型评估语句是否合理
使用N-Gram模型时的数据平滑算法

欢迎关注白马负金羁的博客 http://blog.csdn.net/mafujinji ,为保证公式、图表得以正确显示,强烈建议你从该地址上查看原版博文。本博客 主要关注方向 包括:数字图像处理、 算法 设计与分析、 数据结构 、 机器学习 、数据挖掘、统计分析方法、自然语言处理。
基于N-Gram模型定义的字符串距离
在自然语言处理时,最常用也最基础的一个操作是就是“模式匹配”,或者称为“字符串查找”。而模式匹配(字符串查找)又分为 精确匹配 模糊匹配 两种。

所谓精确匹配,大家应该并不陌生,比如我们要统计一篇文章中关键词 “ information ” 出现的次数,这时所使用的方法就是精确的模式匹配。这方面的算法也比较多,而且应该是计算机相关专业必修的基础课中都会涉及到的内容,例如KMP算法、BM算法和BMH算法等等。
另外一种匹配就是所谓的模糊匹配,它的应用也随处可见。例如,一般的文字处理软件(例如,Microsoft Word等)都会提供拼写检查功能。当你输入一个错误的单词,例如 “ informtaion ” 时,系统会提示你是否要输入的词其实是 “ information ” 。将一个可能错拼单词映射到一个推荐的正确拼写上所采用的技术就是模糊匹配。
模糊匹配的关键在于如何衡量两个长得很像的单词(或字符串)之间的“差异”。这种差异通常又称为“距离”。这方面的具体算法有很多,例如基于编辑距离的概念,人们设计出了 Smith-Waterman 算法和Needleman-Wunsch 算法,其中后者还是历史上最早的应用动态规划思想设计的算法之一。现在Smith-Waterman 算法和Needleman-Wunsch 算法在生物信息学领域也有重要应用,研究人员常常用它们来计算两个DNA序列片段之间的“差异”(或称“距离”)。甚至于在LeetCode上也有一道 “No.72 Edit Distance” ,其本质就是在考察上述两种算法的实现。可见相关问题离我们并不遥远。
N-Gram在模糊匹配中的应用
事实上,笔者在新出版的 《算法之美——隐匿在数据结构背后的原理》 一书中已经详细介绍了包括Needleman-Wunsch算法、Smith-Waterman算法、N-Gram算法、Soundex算法、Phonix算法等在内的多种距离定义算法(或模糊匹配算法)。而今天为了引出N-Gram模型在NLP中的其他应用,我们首先来介绍一下如何利用N-Gram来定义字符串之间的距离。
我们除了可以定义两个字符串之间的编辑距离(通常利用Needleman-Wunsch算法或Smith-Waterman算法)之外,还可以定义它们之间的N-Gram距离。N-Gram(有时也称为N元模型)是自然语言处理中一个非常重要的概念。假设有一个字符串 s
,那么该字符串的N-Gram就表示按长度 N 切分原词得到的词段,也就是 s
中所有长度为 N 的子字符串。设想如果有两个字符串,然后分别求它们的N-Gram,那么就可以从它们的共有子串的数量这个角度去定义两个字符串间的N-Gram距离。但是仅仅是简单地对共有子串进行计数显然也存在不足,这种方案显然忽略了两个字符串长度差异可能导致的问题。比如字符串 girl 和 girlfriend,二者所拥有的公共子串数量显然与 girl 和其自身所拥有的公共子串数量相等,但是我们并不能据此认为 girl 和girlfriend 是两个等同的匹配。
为了解决该问题,有学者便提出以非重复的N-Gram分词为基础来定义 N-Gram距离这一概念,可以用下面的公式来表述:
|GN(s)|+|GN(t)|−2×|GN(s)∩GN(t)|

此处,|GN(s)|
是字符串 s
的 N-Gram集合,N 值一般取2或者3。以 N = 2 为例对字符串Gorbachev和Gorbechyov进行分段,可得如下结果(我们用下画线标出了其中的公共子串)。

有兴趣的读者可以在引用相关JAR包之后在Eclipse中执行上述Java程序,你会发现,和我们预期的一样,字符串Gorbachev和Gorbechyov所得之距离评分较高(=0.7),说明二者很接近;而girl和girlfriend所得之距离评分并不高(=0.3999),说明二者并不很接近。
利用N-Gram模型评估语句是否合理
从现在开始,我们所讨论的N-Gram模型跟前面讲过N-Gram模型从外在来看已经大不相同,但是请注意它们内在的联系(或者说本质上它们仍然是统一的概念)。
为了引入N-Gram的这个应用,我们从几个例子开始。首先,从统计的角度来看,自然语言中的一个句子 s
可以由任何词串构成,不过概率 P(s)
有大有小。例如:
s1
= 我刚吃过晚饭
s2
= 刚我过晚饭吃

显然,对于中文而言 s1
是一个通顺而有意义的句子,而s2
则不是,所以对于中文来说,P(s1)>P(s2)
。但不同语言来说,这两个概率值的大小可能会反转。
其次,另外一个例子是,如果我们给出了某个句子的一个节选,我们其实可以能够猜测后续的词应该是什么,例如
the large green __ . Possible answer may be “mountain” or “tree” ?
Kate swallowed the large green __ . Possible answer may be “pill” or “broccoli” ?

显然,如果我们知道这个句子片段更多前面的内容的情况下,我们会得到一个更加准确的答案。这就告诉我们,前面的(历史)信息越多,对后面未知信息的约束就越强。
如果我们有一个由 m
个词组成的序列(或者说一个句子),我们希望算得概率 P(w1,w2,⋯,wm)
,根据链式规则,可得
P(w1,w2,⋯,wm)=P(w1)P(w2|w1)P(w3|w1,w2)⋯P(wm|w1,⋯,wm−1)

这个概率显然并不好算,不妨利用马尔科夫链的假设,即当前这个词仅仅跟前面几个有限的词相关,因此也就不必追溯到最开始的那个词,这样便可以大幅缩减上诉算式的长度。即P(wi|w1,⋯,wi−1)=P(wi|wi−n+1,⋯,wi−1)

特别地,对于 n
取得较小值的情况当 n=1
, 一个一元模型(unigram model)即为P(w1,w2,⋯,wm)=∏i=1mP(wi)

当 n=2
, 一个二元模型(bigram model)即为P(w1,w2,⋯,wm)=∏i=1mP(wi|wi−1)

当 n=3
, 一个三元模型(trigram model)即为P(w1,w2,⋯,wm)=∏i=1mP(wi|wi−2wi−1)

接下来的思路就比较明确了,可以利用最大似然法来求出一组参数,使得训练样本的概率取得最大值。
对于unigram model而言,其中c(w1,..,wn)
表示 n-gram w1,..,wn
在训练语料中出现的次数,M
是语料库中的总字数(例如对于 yes no no no yes 而言,M=5
)P(wi)=C(wi)M

对于bigram model而言,P(wi|wi−1)=C(wi−1wi)C(wi−1)

对于n
-gram model而言,P(wi|wi−n−1,⋯,wi−1)=C(wi−n−1,⋯,wi)C(wi−n−1,⋯,wi−1)

来看一个具体的例子,假设我们现在有一个语料库如下,其中<s1><s2>
是句首标记,</s2></s1>
是句尾标记:
<s1><s2>yesnonononoyes</s2></s1><s1><s2>nononoyesyesyesno</s2></s1>

下面我们的任务是来评估如下这个句子的概率:<s1><s2>yesnonoyes</s2></s1>

我们来演示利用trigram模型来计算概率的结果P(yes|<s1><s2>)=12,P(no|<s2>yes)=1P(no|yesno)=12,P(yes|nono)=25P(</s2>|noyes)=12,P(</s1>|yes</s2>)=1

所以我们要求的概率就等于:12×1×12×25×12×1=0.05

再举一个来自文献[1]的例子,假设现在有一个语料库,我们统计了下面一些词出现的数量

下面这个概率作为其他一些已知条件给出:P(i|<s>)=0.25P(english|want)=0.0011P(food|english)=0.5P(</s>|food)=0.68

,则可以算得P(s1)=P(i|<s>)P(want|i)P(english|want)P(food|english)P(</s>|food)=0.25×0.33×0.0011×0.5×0.68=0.000031

使用N-Gram模型时的数据平滑算法
有研究人员用150万词的训练语料来训练 trigram 模型,然后用同样来源的 测试 语料来做验证,结果发现23%的 trigram 没有在训练语料中出现过。这其实就意味着上一节我们所计算的那些概率有空为 0,这就导致了数据稀疏的可能性,我们的表3中也确实有些为0的情况。对语言而言,由于数据稀疏的存在,极大似然法不是一种很好的参数估计办法。
这时的解决办法,我们称之为“平滑技术”(Smoothing)或者 “减值” (Discounting)。其主要策略是把在训练样本中出现过的事件的概率适当减小,然后把减小得到的概率密度分配给训练语料中没有出现过的事件。实际中平滑算法有很多种,例如:▸ Laplacian (add-one) smoothing▸ Add-k smoothing▸ Jelinek-Mercer interpolation▸ Katz backoff▸ Absolute discounting▸ Kneser-Ney
对于这些算法的详细介绍,我们将在后续的文章中结合一些实例再来进行讨论。
A Final Word
如果你能从前面那些繁冗、复杂的概念和公式中挺过来,恭喜你,你对N-Gram模型已经有所认识了。尽管,我们还没来得及探讨平滑算法(但它即将出现在我的下一篇博文里,如果你觉得还未过瘾的话),但是其实你已经掌握了一个相对powerful的工具。你可以能会问,在实践中N-Gram模型有哪些具体应用,作为本文的结束,主页君便在此补充几个你曾见过的或者曾经好奇它是如何实现的例子。
Eg.1 搜索引擎 (Google或者Bai)、或者输入法的猜想或者提示。你在用网络时,输入一个或几个词,搜索框通常会以下拉菜单的形式给出几个像下图一样的备选,这些备选其实是在猜想你想要搜索的那个词串。再者,当你用输入法输入一个汉字的时候,输入法通常可以联系出一个完整的词,例如我输入一个“刘”字,通常输入法会提示我是否要输入的是“刘备”。通过上面的介绍,你应该能够很敏锐的发觉,这其实是以N-Gram模型为基础来实现的,如果你能有这种觉悟或者想法,那我不得不恭喜你,都学会抢答了!

Eg.2 某某作家或者语料库风格的文本自动生成。这是一个相当有趣的话题。来看下面这段话(该例子取材自文献【1】):
“You are uniformly charming!” cried he, with a smile of associating and now and then I bowed and they perceived a chaise and four to wish for.

你应该还没有感觉到它有什么异样吧。但事实上这并不是由人类写出的句子,而是计算机根据Jane Austen的语料库利用trigram模型自动生成的文段。(Jane Austen是英国着名女作家,代表作有《傲慢与偏见》等)
再来看两个例子,你是否能看出它们是按照哪位文豪(或者语料库)的风格生成的吗?
This shall forbid it should be branded, if renown made it empty.
They also point to ninety nine point six billion dollars from two hundred four oh three percent of the rates of interest stores as Mexico and Brazil on market conditions.

答案是第一个是莎士比亚,第二个是华尔街日报。最后一个问题留给读者思考,你觉得上面两个文段所运用的n-gram模型中,n应该等于多少?
推荐阅读和参考文献:
[1] Speech and Language Processing. Daniel Jurafsky & James H. Martin, 3rd. Chapter 4[2] 本文中的一些例子和描述来自 北京大学 常宝宝 以及 The University of Melbourne “Web Search and Text Analysis” 课程的幻灯片素材

Ⅶ eclipse中的java文本编辑器英文间距太大怎么办

调整字体啊

Ⅷ 如何将Java源代码进行分行麻烦告诉我

一些企业在招聘程序员的时候,总会特意提出一个要求,即要求具有良好的编码规范。确实现在程序开发人员已经不在是单枪匹马的单干,而是讲究团体作战。此时就要求团队内的乘员都可能够恪守代码的编写规范,这对于乘员之间共享代码、排错等作业都具有非常现实的意义。这在Java语言中当然也不例外。笔者借这次机会,就跟大家分享一下Java源代码的折行规则。虽然这基本不涉及到功能层面的内容,但是对于提高代码的阅读性却有不可替代的作用。
一、代码的最大长度。
虽然在Java的编译器中对于代码的最大长度没有硬性的规定。但是如果代码的长度太长,超过了编译器的最当行宽,显然阅读起来比较麻烦。为此根据笔者的经验,通常情况下Java源代码的行长度不应该大于80个字符。如果超过这个长度的话,在一些开发工具和编辑器上就无法很好的显示。如需要通过滚动条来显示后面部分的代码。当其他项目成员阅读这超长的代码时,就会看得眼花缭乱。当人的温饱问题解决了之后,就需要开始注意美观方面的问题。所以程序开发人员在开发应用程序的时候,要尽量避免书写长的代码。如果代码的每行长度确实需要超过80个字符的话(最好将每行代码的长度控制在70个字符左右),那么就需要对代码进行分行。
二、在恰当的地方对代码进行分行。
笔者建议将Java源代码每行的长度控制在70个字符、最大不超过80个字符。当超过这个字符长度的时候,开发人员就需要考虑在恰当的地方对他们进行分行处理。不过这个分行也不是说开发人员想在哪里进行分行就在哪里进行分行。这个分行是有一定技巧的。虽然这些技巧大部分并不是强制性的规定,但是都是一些专家们的经验总结,可以提高代码的阅读性。为此笔者希望各位程序开发能够严格的遵守。
技巧一:高层折行优于低层折行。
这个技巧是说,在考虑对代码进行折行处理的时候,需要注意代码的层次性。如某段代码涉及到混合四则运算,而四则运算又有明显的运算顺序,此时对代码进行折行时就最好能够在四则运算的关键顺序上进行折行处理。如现在有如下的一段代码:
Mynum=mynum1*(mynum1+mynue2+mynum3-mynum4)+8*mynum5
如果要对这段代码进行折行的话,该在哪个地方加入一个折行符号呢?如果是笔者处理的话,笔者会按如下的格式对代码进行折行处理。
Mynum=mynum1*(mynum1+mynue2+mynum3-mynum4)
+8*mynum5
这主要是根据四则运算的运算层次来进行折行的。显然,*符号的优先级要比+符号要高。所以在+号前面对其进行折行处理,那么就可以一目了然的反应出代码的运算层次。可以大幅度的提高代码的阅读性。所以代码折行的第一个技巧就是高层折行优于低层折行。如此的话,可以使得应用程序的结构代码更加的清晰,更容易被团队成员所理解。
技巧二:在运算符前面进行折行处理。
其实在如上的折行技巧中,还隐藏着一个规则,即在运算符之前进行折行。如上例所示,笔者就是在+号前面进行折行,而不是在+号后面进行折行处理。这主要也是考虑到代码的可读性。如上面这个例子中,如果在+号后面进行折行处理的话,则下一行就会给人一种凭空多出来的感觉,显得代码很不连贯。跟这个规则类似,如果在折行处理的时候遇到逗号时,那么最好能够在逗号后面进行折行。如在一个方法中,需要传入5个参数。此时如果代码行比较长,那么就需要在几个参数之间进行折行处理。此时最理想的折行位置,就是在某个参数的逗号后面。注意,使在逗号后面进行折行,而不是在逗号前面。因为一个参数一个逗号是匹对的。而如果一个逗号加一个参数,则让人看起来很不舒服。
技巧三:这行代码的对起方式。
当不得已对代码进行折行处理时,下一行的代码应该与其同等级的代码行左对齐。如上例所示,在+号前面将某一段四则运算公式进行折行处理的时候,其+号符号已经采取缩进处理。其缩进后的效果就是要与其同等级的代码行左对齐。如此的话,明眼人一看就知道这段代码采取过折行处理;而且跟上一行代码的层次关系。当一段代码被分割成三行甚至跟更多行数的时候,这个规则会非常的有用。如果能够严格遵守这个规则,即使将代码分割成多行,看起来也不会觉得那么混乱。反而给人一种比较有层次的感觉。
另外在采取缩进处理的时候,可以利用Tab键来提高缩进处理的效率。因为直接按空格的话,有可能空格字符数量不一致,会让人觉得层次不起,产生比较大的混乱。一般情况下,当代码行两侧距离页边的距离比较大,看其来不怎么舒服时,可以在代码行中通过插入TAB键(会在代码行中连续插入8个字符)来提高代码的阅读性,让代码的缩进实现统一。
技巧四:为变量寻找一个合适的位置。
在编写应用程序时,尽量将变量声明放置在一个代码块的开始处,也就是说{}花括号的开始位置。虽然说可以在需要使用变量的时候再对其进行声明。但是笔者不同义如此操作。因为如果在的呢感到使用变量的时候再来声明变量时,会降低代码的可读性。同理,也需要避免低层声明与高层声明重复,这样会引起代码混乱并可能引发程序功能性错误。而且这种错误在后续的排错中很难被发现。为此要在应用程序开发的时候就要尽量避免这种错误。
在声明变量的时候,有时候可能代码很简单,生命变量的行总共加起来也不会超过十个字符。此时能否把多个变量的声明写在同一行呢?从就技术上来说,这是可行的。也就是说,Java编译器允许将多个变量定义在同一行上。但是从阅读性上来说,这并不是很好的做法。笔者的建议是,即使变量定义再简单,或者变量比较多,也最好分行进行变量的声明。也就是说,一行声明一个变量。这可以提高代码的可阅读性。而且有时候往往需要对变量加一个注释说明变量的用途,如果以行定义一个变量,添加行注释也相对简单许多。
总之,以上的这些折行的规则基本上不会影响到代码的运行。但是,对于代码的维护与后续的排错、升级、二次开发等等具有不可忽视的作用。而且现在基本上应用程序开发式团队开发,故大家都遵守同样的代码编写规范是非常重要的。笔者在开发一个应用程序的时候,事先都会花一定的时间,跟项目成员强调这些折行的规则。目的只有一个,就是提高代码的可读性,便于后续代码的共享与维护。毕竟后续面对这些代码的,并不是客户,而是我们自己。我们程序员在编写代码的时候,不能够搬起石头砸自己的脚。笔者认为,现在一个合格的程序人员,不仅技术功底上要过得硬,而且还必须要遵守这些无形规则的约束。难怪现在这么多企业在挑选程序开发人员的时候,都会注明良好的编码规范。现在对于这些无形中的条条框框,项目经理已经开始重视起来。

阅读全文

与java编辑距离相关的资料

热点内容
程序员东北大学 浏览:426
编译忽略空字符 浏览:117
多店铺阿里云服务器教程 浏览:378
单片机求初值 浏览:420
安卓机如何在电脑备份图片 浏览:925
ca证书加密机价格 浏览:798
天干地支年份算法 浏览:796
程序员打造的视频 浏览:7
java和php通信 浏览:680
为什么黑程序员 浏览:163
程序员男生 浏览:456
戴尔文件夹内文件怎么置顶 浏览:582
云服务器6m网速 浏览:722
vivo手机中国联通服务器地址 浏览:862
工程总控编译失败 浏览:707
燕赵红枫app如何下载 浏览:867
php查杀软件 浏览:878
教育管理学pdf 浏览:547
服务器均衡怎么使用 浏览:626
linux中jps 浏览:954