您好、欢迎来到现金彩票网!
当前位置:PC蛋蛋 > 允许重画 >

各位大师请问一下编程思路的问题。初学者看了算法知道算法的思路

发布时间:2019-06-10 16:54 来源:未知 编辑:admin

  各位大师,请问一下编程思路的问题。初学者看了算法,知道算法的思路,但是如何把思路转化为代码呢?

  各位大师,请问一下编程思路的问题。初学者看了算法,知道算法的思路,但是如何把思路转化为代码呢?

  有没有个标准流程,比如画一画流程图什么的?比如有一个选择排序的算法,思路就是搜索整个列表,找到最小项的位置,如果最小项不是第一个位置,那就交换这两个的位置。思路是很简单,但是具体到代码就费劲多了。比如这两个while循环,自己写的时候实在没想明白。请问一下大家当时学的时候是怎么度过这个尴尬的时期的,我知道要多写代码,但是实在无从下手。谢谢大家,希望大家不吝赐教!!

  你说的这个叫冒泡排序,你的需求和思路已经明确,那么先抛开代码不说你会怎么实现呢。比如有这么一串数字:4,3,8,1,7,2,6我们想实现从小到大排序,这样的话每个数字都要进行比较然后交换位置,首先拿着4去跟后面的每个数字比较,找到比它小的互换位置,这样的话就需要不断的重复的去比较然后呼唤位置,这里会有很多重复的操作直到最后实现你的需求。

  那么接下来转换成代码,其实思路也是一样的,无非就是将你的思路转换成一种计算机可以识别的语言,然后让计算机来帮你做这件事。那么经过上面的判断我们知道会有很多重复的操作,那么对应到代码中就是用循环来实现了,而且我们需要拿着每一个数字跟其他的数字进行对比,这样的话一个循环肯定是不够的,所以要用两个嵌套循环,这样就可以实现每个数字进行对比了。重复的操作我们代码中的循环实现了,那么接下来还有对比操作,对比那么我们想到的代码里就是if判断了,所以在循环中if条件也是比不可少的了。对比也实现了剩下的就是交换位置,这里想到的就是用一个暂存器,那么在代码中其实就是一个变量。比如有两杯水,我想把两杯水进行互换,直接倒肯定是不行的。那么我们能想到的办法就是再找一个容器,先把其中一个杯子的水倒入容器中,再把第二个杯子的水倒入第一个杯子,然后再把容器中的水倒入第一个杯子,这样就实现了互换。代码中就是3个变量进行操作。

  其实代码中的逻辑就是对应到我们生活中的场景的。无法是把我们生活中的一些场景转换成一种计算机语言让计算机来模拟实现。当然要有一定的语言功底。比如遇到重复的操作那么你能立马想到代码中的循环,比如对比操作你能想到代码中的if判断等等。这些都是需要慢慢积累的,所以语言基础一定要打好。

http://ammanphoto.com/yunxuzhonghua/43.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有