![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程算法基础
包子剪子锤
这个作者很懒,什么都没留下…
展开
-
第03讲-自底向上风格_模拟游戏
模拟游戏模拟井字棋游戏九个格子中双方轮流落子。其中一方画x符号,另一方画o符号。开始时,9个格子都是空的。程序显示当前局面,提示某一方输入落子位置,然后显示局面,再提示另一方。当某方棋子连成直线,该方获胜!例如:初始:_ _ __ _ __ _ _o 输入位置: 1,1o _ __ _转载 2014-04-29 09:47:47 · 416 阅读 · 0 评论 -
第01讲-暴力破解法_马与瓦
马与瓦总共有 100 匹马总共驮有 100 块瓦(古代的瓦,很大,很重)每匹大马每次能驮 3 块瓦每匹小马每次能驮 2 块瓦小马驹每次 2个马驹驮 1块瓦求各种马的数目提示:可能是多解的,要列出所有的解。转载 2014-04-27 14:37:38 · 822 阅读 · 0 评论 -
第01讲-数字数码管
数字数码管数字或字母可以用7位数码管显示(就是排列为8字形的7个数码管) @@@@ 0 @ @ 1 2 @ @ 3 @@@@ 4 5 @ @ 6 @转载 2014-04-27 15:07:57 · 642 阅读 · 0 评论 -
第01讲-常数变易法_打印图形
打印图形试打印出如下图形: $$ $$ $$ $$ $$ $$ $$ $$ $$ $$ $$$$ $$ $$$$ $$ $$ $$ $$转载 2014-04-27 14:56:52 · 390 阅读 · 0 评论 -
第01讲-一刀切法_编程
编程假设手机通话时间不会大于24小时。某个用户的开始通话时间为: 12:38:15结束通话时间为: 12:39:16则该用户通话时长为:62秒对于一般的情况,可能需要考虑:跨分钟,跨小时,跨零点的问题。如果已知了开始和结束时间,试编程求通话时长。时间格式为:hh:mm:ss小时采用24小时制提示:关键在于如何处理,能把貌似转载 2014-04-27 14:58:22 · 469 阅读 · 0 评论 -
第03讲-发现抄袭
发现抄袭随着电子与信息技术的飞速发展,写文章变得越来越容易(因为可以拷贝粘贴)。为了防止文章中过度的抄袭现象,发扬原创精神,本程序意在能发现A文章(a.txt中)是否抄袭了B文章(b.txt中)。我们规定:有20个连续相同的字符,就有抄袭的嫌疑。程序对a.txt, b.txt的内容进行比对,发现a.txt中貌似抄袭的所有位置。要求列出疑似抄袭的内容、该内容在a.txt中的位转载 2014-04-29 09:51:17 · 706 阅读 · 0 评论 -
第03讲-自顶向下风格_编程
设计程序在中文Windows环境下,控制台窗口中也可以用特殊符号拼出漂亮的表格来。比如:┌─┬─┐│ │ │├─┼─┤│ │ │└─┴─┘其实,它是由如下的符号拼接的:左上 = ┌上 = ┬右上 = ┐左 = ├中心 = ┼右 = ┤左下= └下 = ┴转载 2014-04-29 09:45:40 · 332 阅读 · 0 评论 -
第03讲-组合与聚合_编程
编程请使用组合或聚合模式解决如下问题:已知有如下类:// 可以把公历转换为中国农历的日期表达。class ChinaDate{ public ChinaDate(java.util.Date d) { //... } public toString() {// 复杂算法转载 2014-04-29 09:50:25 · 424 阅读 · 0 评论 -
第03讲-面向对象设计原则_设计实验
设计实验有 3 个开关:a b c有 3 个电灯:x y z要求实现:a 能控制 xb 能控制 x, yc 能 x注意:1个灯泡可以被多个开关控制;1个开关可以同时控制多个灯泡所谓“控制”:当开关操作时,当前灯泡的状态发生翻转。亮->灭 或 灭->亮转载 2014-04-29 09:49:27 · 541 阅读 · 0 评论 -
第03讲-单例模式_方法调用
方法调用考虑一种日志情形。有多个程序会调用一个 MyLog 类来生成日志对象。日志对象实际上向某大型设备输出。要求MyLog类使用单例模式,最多只能有两个实例。调用getInstance()获得一个实例。 每个实例有busy或free的状态,表示是否为空闲。假如所有实例都是busy的,则返回空指针。转载 2014-04-29 09:49:59 · 646 阅读 · 0 评论 -
第03讲-测试驱动风格_设计程序
设计程序在编写图形界面软件的时候,经常会遇到处理两个矩形的关系。如图【1】所示,矩形的交集指的是:两个矩形重叠区的矩形,当然也可能不存在(参看【2】)。两个矩形的并集指的是:能包含这两个矩形的最小矩形,它一定是存在的。本题目的要求就是:由用户输入两个矩形的坐标,程序输出它们的交集和并集矩形。矩形坐标的输入格式是输入两个对角点坐标,注意,不保证是哪个对角,也不保证顺序转载 2014-04-29 09:48:53 · 362 阅读 · 0 评论 -
第02讲-进制的转换_编程
编程Excel 单元格地址有两种格式:普通格式,如:A5, BC12对应的RC格式:R5C1, R12C55显然,RC格式是直接给出行号和列号请编程在两种地址格式间转换。转载 2014-04-27 15:30:30 · 453 阅读 · 0 评论 -
第01讲-假设修正法_“评级”算法
“评级”算法某小学要求不能给学生打具体分数,而是给一个评级。当然,这个“评级”也是根据分数计算出来的。规则:设百分制的分数为 n则根据 n 的范围:90-100: 优秀80-89: 良好70-79: 正常60-69: 合格0-59: 加油已经知道了分数 n, 请计算“评级”注意:不允许使用else语句,转载 2014-04-27 14:54:39 · 595 阅读 · 0 评论 -
第02讲-活用串的API_判断
判断判断一个全路径名是否在c盘且是.ini扩展名。"c:\\xyz\\bak\\x.ini" 复合标准"ccc\\ttt\\kk\\ini" 则不是转载 2014-04-27 15:25:38 · 392 阅读 · 0 评论 -
第02讲-通信编码
通信编码假设通信的物理设备只能表示1和0两种状态。1和0状态都不能持续太久,否则物理设备会出现故障。因而人们设计出一种变通的方法:多个0后人为地补入一个1多个1后人为地补入一个0当然,在解码的时候,要相应处理。下面我们用串来模拟这个算法。假设有需要通信的串:String s = "101010010010000101111010001转载 2014-04-27 15:40:36 · 574 阅读 · 0 评论 -
第02讲-格式检查
格式检查xml 文件主要是由标签构成的。类似: ..... .dfsfs kkkk 请编写一个程序,能够发现其中匹配不完整的标签。例如: sdfsfs转载 2014-04-27 15:42:29 · 459 阅读 · 0 评论 -
第01讲-枚举与剪枝_观察算式
观察算式观察下面的算式:△△△ * △△ = △△△△某3位数乘以2位数,结果为4位数要求:在9个△所代表的数字中,1~9的数字恰好每个出现1次。转载 2014-04-27 14:44:10 · 415 阅读 · 0 评论 -
第02讲-串与数值转换_翻译
翻译把大写数字翻译为整数:一四零零六 ==> 14006二五七 ==> 257转载 2014-04-27 15:27:10 · 338 阅读 · 0 评论 -
第02讲-正则表达式初步_分散字符串
分散字符串请把下列字符串分散为数字和字符构成的串String s1 = "abc1234xyz667kkmd764tttt";串由字母和数字间隔构成,要分离出所有的字母段和数字段,即:abc1234xyz667kkmd764tttt转载 2014-04-27 15:31:47 · 352 阅读 · 0 评论 -
第02讲-正则表达式进阶_展开串
展开串实际开发中,常常会出现用到一批文件,而这些文件的文件名有某种规律,我们在表述的时候,往往习惯简写,但这样程序又不好识别。比如:c:/abc/xyz/k[11..19].dat实际表示的就是:c:/abc/xyz/k11.datc:/abc/xyz/k12.datc:/abc/xyz/k13.datc:/abc/xyz/k14.d转载 2014-04-27 15:33:14 · 560 阅读 · 0 评论 -
第02讲-加密与解密_设计程序
设计程序一种Playfair密码变种加密方法如下:首先选择一个密钥单词(称为pair)(字母不重复,且都为小写字母),然后与字母表中其他字母一起填入至一个5x5的方阵中,填入方法如下:1.首先按行填入密钥串。2.紧接其后,按字母序按行填入不在密钥串中的字母。3.由于方阵中只有25个位置,最后剩下的那个字母则不需变换。如果密钥为youandme,则该方阵如下:转载 2014-04-27 15:37:17 · 371 阅读 · 0 评论 -
第01讲-隐藏密码
隐藏密码密码备忘扰乱法我们的密码如果很长很复杂,容易忘记。如果太简单,不安全。 把密码记录在本子上,更容易泄密!有人想了这么个办法,把密码嵌入一堆随机的数字中。因为每个人对密码完全记住困难,但从一些线索中回忆出来就很容易。密码:753833 5 6 4 7 2 8 65 4 7 2 7 0 7 41 6 5 9 5 8 0 3转载 2014-04-27 15:11:20 · 448 阅读 · 0 评论 -
第03讲-ATM模拟
ATM模拟程序描述:使用字符用户界面。当输入给定的卡号和密码(初始卡号为123456,密码是666666)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:1、如果三次不能正确输入密码,则退出程序。2、查询余额:初始余额为10000元。3、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。4、ATM存款:不能出转载 2014-04-29 09:50:50 · 1028 阅读 · 0 评论