书斋课斋
GMFTBY
for all
展开
-
挑战程序设计 1.6.1
Question: 给出几段长度,请将这些长度拼接成周长最大的三角形,并输出最大的周长 Solution: 1.朴素解法 O(n^3)时间复杂度的枚举方法,枚举所有的情况进行判断,从而选择出最优秀的那种方案 核心代码: for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { if(j==i) continue; for(int k=1原创 2016-09-15 09:43:04 · 393 阅读 · 0 评论 -
POJ3069-贪心水
Question: 本体摘自《挑战程序设计2.2.4》,详情见书 求最少的标记点覆盖所有的点 Solution: 我们这里采用的贪心思路是每次从起点开始贪半径,找到我们的原点之后,在贪右边,找到下一次的起点 Code: #include"iostream" #include"cstdio" #include"cstring" #include"cstdlib" #include"alg原创 2016-09-16 12:12:12 · 511 阅读 · 0 评论 -
数据结构与算法 - 绪论上
1.计算机 1.引言 Dijstra原话摘引,计算机无非就是计算工具而已 使我们使用的可以重复的,机械的,为了完成目的而使用的工具(当然每个工具都有自己的能力范围) 2.算法 所谓计算机算法,无非就是我们的计算过程:某种工具按照某种一定的规则,明确机械的重复某一些过程,即我们认为的解决问题的一些指令序列(特定的计算模型) 大致分为以下几个步骤: 1.输入(问题实际描述) 2.输出(原创 2016-09-20 20:50:53 · 570 阅读 · 0 评论 -
数据结构和算法绪论下
1.算法分析的要点 1.正确性 2.复杂度的分析 基础知识: 级数: T(n)=1+2+3+...+n=O(n^2) T(n)=1^2+2^2+...+n^2=n*(n+1)*(2*n+1)/6=O(n^3) T(n)=1^3+...+n^3=O(n^4)可以很明显的看出来,几何级数的复杂度呈现出来的规律就是始终是我们的幂数的+1次幂的复杂度 2.注意事项: 无论n多原创 2016-09-25 20:48:55 · 305 阅读 · 0 评论 -
正则表达式 详解
1.作用:搜索和替换——正则表达式的作用 2.匹配单个字符: 正则表达式可以包含纯文本当然,这样用正则表达式也是一种浪费 正则表达式字母大小写敏感 匹配任意字符: .元字符可以匹配任意的 一个 字符 我们有时候在文本中还需要去匹配字符.这时候我们的正则表达式中的元字符.已经有了实际的含义,我们就必须对模式中的.进行转义 这时候我们利用元字符\堆元字符.进行转义,这时候的正原创 2016-11-12 19:06:45 · 743 阅读 · 0 评论