自顶向下编程范式 关键是要先解决最上层的主干逻辑 1.首先思考主干逻辑,不要纠结于具体细节 2.主干逻辑编写好后再一步一步实现主干逻辑的子函数 实例操作 验证回文串 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写 设计步骤 1.先想好整个入口函数的整体逻辑 1.先过滤
原创 2023-08-18 09:19:35
53阅读
斐波那锲数列def fib(num): a = 0 b = 1 n = 0 while n < num: a, b = b , a + b yield a n += 1 print('done') for i in fib(9): print(i) print(fib(9))杨辉三角def tr
转载 2023-06-21 22:26:05
67阅读
在面试中,算法题目是必须的,通过算法能够看出一个程序员的编程思维,考察对复杂问题的设计与分析能力,对问题的严谨性都能够体现出来。算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算
转载 2023-08-01 21:11:21
37阅读
第一篇博客 Dijkstra是一种经典且高效的单源最短路径算法,其本质是一种贪心算法,通过对图向外层层扩展得到从某一给定点到所有其它点的最短路。 操作步骤 1. 记已找到最短路的点为集合S,未找到的点为集合Q,显然初始状态为除起点外的点都在集合Q中。 2. 将起点加入集合S中,同时更新集合Q中的点与起点的距离,与起点直接相连的点距离为边权,不直接相连的点
转载 2023-07-06 14:23:11
81阅读
《最新JAVA编程算法50例》由会员分享,可在线阅读,更多相关《最新JAVA编程算法50例(36页珍藏版)》请在人人文库网上搜索。1、写一个函数,例如:给你的 a b c 则输出 abc acb bac bca cab cbaimportjava.util.ArrayList; importjava.util.List; publicclassNumTest publicstaticvoidmai
转载 2023-07-24 15:07:24
31阅读
  高级加密标准(Advanced Encryption Standard,简写AES),是一种用来替代DES的对称加密算法,相比DES,AES安全性更高,加密速度更快,因此被广泛使用。  理论上看,AES可被破解,但是就目前的硬件性能来看,目前AES还是安全的,在开发工程中,如果要使用对称加密算法,应该首选AES。  下面使用介绍各语言中的DES加密解密实现:  声明  1、加密解密过程分别使用
转载 2023-06-20 23:42:08
86阅读
切割排序 代码(C)本文地址:http://blog.csdn.net/caroline_wendy排序切割, 把一个数组分为, 大于k\小于k\等于k的三个部分.能够使用高速排序的Partition函数, 进行处理, 把大于k的放在左边, 小于k的放在右边.使用一个变量记录中间的位置, 则时间复杂...
转载 2015-07-29 21:43:00
70阅读
2评论
硬币问题 代码(C)题目: 有1, 5, 10, 50, 100, 500元硬币各若干枚, 如今要用这些硬币来支付A元, 最少须要多少枚硬币?假定本题至少存在一种支付方案.使用贪心算法, 优先选用最大的硬币, 并不断的调整硬币的数
转载 2019-05-21 21:57:00
94阅读
2评论
转载 2015-10-03 21:52:00
57阅读
2评论
字典分词 代码(C)本文地址:http://blog.csdn.net/caroline_wendy给定字典, 给定一句话, 进行分词.使用深度遍历(DFS)的方法.使用一个參数string, 保存当前分支的分词后的句子; 使用一个參数vector, 保存全部可能的组合.使用一个验证函数, 推断句子...
转载 2015-05-18 11:14:00
87阅读
前段时间出差在外闲得无事看到一个数独问题。有三题,脑子不好使,只做出前两题。想想不如用程序来实现。我先把题放出来大家有兴趣研究一下。857119262569245881249465758915219633576614772645386978358398761719364528817227667653548规则:在9*9的格子中用1到9填满格子:每一行都要用到1~9,位置不限;每一列都要用到1~9,
转载 2023-07-05 17:39:36
88阅读
本次工程实践的题目是DES算法的C语言实现: 菜单为:   (1)加密,输入明文得到密文   1) 输入格式:明文8个ASCII字符,密钥8个ASCII字符(例如“abcdef,78”,“20121100”)   2) 将输入密钥和明文的8个字符各自转换为二进制,然后进行DES加密,输出加密结果(64比特二进制)       &nbsp
转载 2023-07-24 15:07:11
225阅读
翻转单词顺序 代码(C) 题目: 输入一个英文句子, 翻转句子中单词的顺序, 但单词内字符的顺序不变. 首先翻转(reverse)整个句子, 然后查找空格, 如遇到空格, 则翻转前面的单词, 或遇到结束符, 相同进行翻转. 代码: /* * main.cpp * * Created on: 20
转载 2014-09-26 09:25:00
252阅读
2评论
围棋程序=围棋数据结构+围棋算法e.g.各种典型的棋局或对弈程序=棋盘的数据结构(19X19 二维数组)+各种典型的下棋步骤即记录棋局对弈过程的一系列具体的算法晓辉是这样想的:如果所有可能的布局都蕴含在棋盘的序位关系之中,那么,这种蕴含的棋局只有在被具体的对弈双方选用的时候,才能由隐而显。 (2011-7-23 17:56): 晓辉设想: 1. (2011-7-23 17:53)+(2011-
旋转矩阵 代码(C) 输出旋转矩阵, 使矩阵是按对角线螺旋上升, 在输出规则确定以后, 就能够推断, 上升规律是, 行列相加为定值.所以採用两次循环的方法, 而且上下矩阵, 分开输出.如:1 2 6 7 15 3 5 8 14 16 4 9 13 17 22 10 12 18 21 23 11 19 20 24 25代码:/* * main.
转载 2015-08-22 20:55:00
138阅读
2评论
全然背包问题 代码(C)​题目: 有n个重量和价值分别为w,v的物品, 从这些物品中挑选出总重量不超过W的物品, 求全部挑选方案中价值总和的最大值. ​​*每件物品能够挑选随意多件.​​动态规划​: 每次选取最大的组合, 增加到数组, ​第一种时间复杂度O(nW^2)​, ​另外一种时间复杂度O(nW).解法1, max()部分表明, 要么来源于上面, 要么来源于前面.代码:/* * main.c
转载 2022-01-10 13:53:37
86阅读
%蚂蚁算法test %用产生的一个圆上的十个点来检验蚂蚁算法 clc clear %参数 alpha = 1 ; %信息素指数 beta = 5 ; %启发指数 rho = 0.5 ; %挥发系数 n
1.定义:        k-近邻(KNN,k-NearestNeighbor)算法是一种基本分类与回归方法,我们这里只讨论分类问题中的 k-近邻算法。k-近邻算法的输入为实例的特征向量,对应于特征空间的点;输出为实例的类别,可以取多类。k-邻算法假设给定一个训练数据集,其中的实例类别已定。分类时,对新的实例,根据其 k 个最近邻的训练实
编程经典案例(持续更新中,敬请期待):一、购物问题小明的女朋友最喜欢在网上买买买了,可是钱包里钞票有限,不能想买啥就买啥。面对琳琅满目的物品,她想买尽可能多的种类,每种只买一件,同时总价格还不能超过预算上限。于是她请小明写程序帮她找出应该买哪些物品,并算出这些物品的总价格。输入规范:每个输入包含两行。第一行是预算上限。第二行是用空格分隔的一组数字,代表每种物品的价格。所有数字都为正整数并且不会超过
最小的k个数 代码(C)本文地址: http://blog.csdn.net/caroline_wendy题目: 输入n个整数, 找出当中的最小k个数.使用高速排序(Quick Sort)的方法求解, 把索引值(index)指向前k个数.代码:/* * main.cpp * * Created on
转载 2017-07-08 16:44:00
85阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5