关于算法的一些想法

原创 2001年11月10日 10:28:00

关于算法的一些想法

算法是编程的灵魂。不可想象,没有算法的程序会是一个高水平的程序。窗体的形状、大小涉及到算法;控件自身以及与其它控件的诸多关系需要计算;字符串的查找、截取和替换更离不开它了……总之,从小到一个按钮的安放位置,大到……(哪里呀?我不知道),无不与算法息息相关。
算法或是很简单,或是很复杂。凡事从简单做起,这是捷径吧。本文将从最简单的算法说明一下学习算法从哪开始。
有时简单的事也会让我们做成很复杂。比如:计算a的b次方吧,有人这样处理:
Dim a As Single, Total As Single, b As Integer
a = Text1.Text: b = Text2.Text: Total = 1
Do While b <> 0
Total = Total * a
b = b - 1
Loop
Text3.Text = Total
甚至这样:
Private Sub Command1_Click()
Dim a As Single, Total As Single
Dim b As Integer, n As Integer

a = Text1.Text
Total = Text1.Text
b = Text2.Text

Select Case b
Case 0
Total = 1
Case Is < 0
MsgBox "非法数据", vbOKOnly, "出错"
Text3.Text = ""
Exit Sub
Case Else
For n = 1 To b - 1
Total = Total * a
Next
End Select
Text3.Text = Total
End Sub

其实,如若知道VB中有一个专门计算此类问题的运算符“^”,则会简单可靠得多。试看:
Dim a As Double, b As Integer, c As Double
a = Text1.Text: b = Text2.Text
c = a ^ b
Text3.Text = c
再比如,VB编程乐园最近有一篇关于翻转字符串的文章,讨论如何利用递归原理编制一个翻转字符的函数,算法很精密,非常有意思(推荐认真研究一下):
Function reversestring(revstr As String) As String
Dim doreverse As Long
reversestring = ""
For doreverse = Len(revstr) To 1 Step -1
reversestring = reversestring & Mid$(revstr, doreverse, 1)
Next
End Function

不过如果我们用VB的内部函数StrReverse则更快更方便:
Text2.Text = StrReverse(Text1.Text)
看了这上面几个例子,你得出什么结论?哈,要学算法,首先得学一学VB的运算符和内部函数!吃透这些东西总没错,免得日后辛辛苦苦弄了个算法,回头一看,哇噻,VB自身早就有了!当然了,自己搞些算法不会没有好处的,至少可以锻炼锻炼嘛。只是在当今什么都飞速发展的年代,如果不是为了练习的需要,最好不要走太多的弯路。我说错了什么的话,敬请斧正! 

基于DS18B20的CRC算法研究,及matlab实现

最近在ARM9上基于操作系统编写了一个温度传感器驱动
  • pengrui18
  • pengrui18
  • 2014年04月29日 22:23
  • 2933

对大学的想法

对大学生涯的回顾与想法为什么会想写这么个东西呢?? 原因有两点 1. 练练markdown 2. 吐槽一下自己虚度的光阴 对大学生涯的回顾与想法 大学做了什么 对于各个方面的看法 应该...
  • qq_16468937
  • qq_16468937
  • 2016年03月30日 22:56
  • 986

谈谈对工作的看法

好的团队能让你知道如何合作,如何沟通甚至是一个好的工作方式与习惯,一个好的领导除了能给你职业方面的培训,还会交给你如何形成自己的职业观、价值观,一群好的同事能让你不断地进步、快速的成长。一个好的行业会...
  • linux_zkf
  • linux_zkf
  • 2015年08月26日 08:44
  • 4136

关于团队合作的一些看法

我现在待的公司是一个分公司,在软件开发上经常需要和各个分部进行合作,而在这段合作中,我渐渐发现了一些不可避免的问题。 特此记录一下,希望以后注意并想办法解决。 1.时差导致的工作延误 ...
  • u011107827
  • u011107827
  • 2015年04月09日 16:41
  • 421

我的创业劲儿,无可阻挡-JAVA学院张孝伟

导语:张孝伟,这个怀揣着创业梦想的农村小伙,为了报答父母的恩情,他开启了自己的逐梦之旅。友好的伙伴,火旺的生意,曾经让他如鱼得水。就在他满足于现状的时候,一场突如其来的事故,让他一夜间倾家荡产。他能否...
  • cdczbk
  • cdczbk
  • 2014年08月04日 14:23
  • 768

新思路,坚持创新;好想法,坚持执行

最近,不断反思,进行了一些新的尝试,希望自己能够不断突破瓶颈。 1.倒序读书。   以前,看书,总是顺着看。看了一遍又一遍,很大的局限性是后面的章节没有前面的熟。   一般,刚刚看一本新书时,兴致勃勃...
  • FansUnion
  • FansUnion
  • 2013年12月07日 19:33
  • 1540

对物联网操作系统特征和定位的思考

对物联网操作系统特征和定位的思考在周末的上午,坐在五道口Starbucks咖啡厅里,慢慢啜着稍带苦涩的冰美式,嚼着偶尔从吸管里吸上来的焦糖粒,目光停留在玻璃窗外来回穿梭的车辆上,心绪散漫…很久没有这么...
  • hellochina15
  • hellochina15
  • 2015年05月24日 13:41
  • 3955

项目从想法到实现需要经历哪些过程

由于计算机的普及、软件的广泛使用,公众对于软件项目是个啥东西都有一个概念上的认识。很多人对于公司哪些地方将要应用一套软件系统,已经能够提出一定的想法。然而,在从想法到软件落地应用的过程中,软件项目要经...
  • lejuo
  • lejuo
  • 2014年07月22日 18:21
  • 7117

关于递推算法的一些想法

如走电梯,一次可以走一步,也可以走两步,n阶电梯可以的走法: #include using namespace std; in fn(int n){ if(n == 1) ...
  • wangzhiqing3
  • wangzhiqing3
  • 2013年05月25日 11:19
  • 551

bpm算法+应用想法

1、bpm算法 算法内容繁多,暂不详写,改天专门写一个bpm算法的文档,今天主要谈谈我对bpm应用的一个想法,个人之见。 2、bpm应用想法 (1)跑步听歌时,方便选择和步伐一致的歌曲 从现代...
  • lc22xytcedu
  • lc22xytcedu
  • 2015年10月09日 16:37
  • 1088
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于算法的一些想法
举报原因:
原因补充:

(最多只允许输入30个字)