`
come_for_dream
  • 浏览: 117022 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论
文章列表

最大K乘积

最大K乘积的问题: 在一个长度为N的数字串中插入K-1个乘号,将N分成K部分,找出一种分法,使得这K个部分的最大乘积最大。 例如有一个数字串:312,当N=3,K=2时会有以下几种分法: 3*12=36   31*2=62 但是符合题目的是31*2=62,通过这个例子很明显的可以看出最大k乘积的问题,就是求一个数,将其分成k段,求出段相乘的最大值问题。   要求解此问题要用到动态规划的思想,在这里要用到两个数据来分别表示不同的含义 w(h1,h2)表示第h1位到第h2位所组成的十进制数(h2.>h1) m(i,j)表示:前i位(从1.......N)分成j段所得的最大乘积 ...
代码公布
        在做Android开发的时候,有时候需要在一个Activity的里面调用两次 setContentView方法。比如在应用启动的时候,开始显示欢迎界面,在显示欢迎界面的同时,进行后台数据的处理,等到后台数据准备好了,才显示 真正的 ...

十六进制的减法

实验要求: 编程计算3550H-2320H,按16进制输出计算所得的差1230H。再输出3550H-2321H的差,检验程序的正确性。   实验提示:   考虑依次将1230H(即0001 0010 0011 0000B)从高位到低位,每4位二进制数一组分离出来,再将4位二进制数转换为ASCII码,利用DOS系统功能调用的2号子功能输出,就得到16进制数据的输出效果。本题要求综合应用移位操作、逻辑操作等指令,并利用条件转移指令实现简单的循环程序       实验流程图:           
MianActivity.java public class IntentDemo extends Activity implements OnClickListener{    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        Butt ...
               给Android虚拟机AVD加一个虚拟sdcard 在写音乐播放器的时候,不想把每次写好的APK装到手机中来运行,个人感觉挺麻烦的,就想着在我的AVD里面放几首音乐进去,这样测试比较方便,但是通过DDMS的File Explorer往手机的sdcard里面放歌曲的时候会出现 Read-only file system Failed to push selection: Read-only file system 这样的错误。原因是我的AVD并没有一个sdcard,因此我们就需要创建一个虚拟的sdcard,不过不要着急,很简单的,不要看到在dos下运行就泄 ...
                 Android实现Activity两个界面的跳转和传值                 前些天试着做了一个音乐播放器,很简单的一个程序,不过里面涉及到的知识需要我好好总结下。               首先我们首先说 ...
 EditText   a.限制输入字符的数量 android:maxLength="3"   b.限制输入的行:默认是多行,若想改为单行设置属性android:singleLine="true"       (不过在更高版本的安卓     系统中默认支持单行,并不支持多行)  c.限制输入信息,若设置只能输入数字android:inputType="number",     设置输入文本android:inputType="text",还可以设置输入密码格式  d.设置提示信息android:hint=&q ...
经过几天的实践这个丑陋的音乐播放器终于出来了,它作为版本1.0在今天发布。犹豫用的是音乐文件搜索,还没有用到数据库的音乐搜索,所以刚打开时的加载时间会长一点。在版本2.0会有更多的改进。谢谢支持!!!!           附件里是apk安装包,代码会在以后的总结中公开。
                                 循环日赛表的分治实现        实现循环赛日程表。 设 有n=2k个运动员要进行网球循环赛。现要设计一个满足以下要求的比赛日程表:    (1)每个选手 必须与其它n-1个 ...
                           快速排序思想及其算法实现     快速排序(Quicksort)是对冒泡排序的一种改进。O(N*logN)的算法复杂度使它得到了广泛的应用。 算法的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中的一部分的所有数据都比另一部分都要小,然后按此方法分别对这两部分再分别进行快速排序,这呢哥哥排序过程可以递归处理。 <!--EndFragment--> 以此达到整个数据变成有序序列。   算法的过程为: 1.制定杻轴(一般是第一个元素) 2.通过一趟排序将一杻轴为中心,把待排记录分割成独立的两部分,使 ...
冒泡排序算法的运作如下:     比较相邻的元素。如果第一个比第二个大,就交换他们两个。     对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。     针对所有的元素重复以上的步骤,除了最后一个。     持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较 冒泡的算法复杂度为: 最好情况O(n)
在自己的笔记本上装安卓系统 http://www.cnblogs.com/kkun/p/3370124.html
                               归并排序的算法实现 归并排序的基本思想是:          将待排序元素分成大小大致相同的两个子集合,分别对两个子集合进行排序,最终将排好序的子集合合并成为所要求的排好序的集合。         算法:           1.把待排序的n个记录看作长度为1的有序序列,将相邻的子序列两两归并为长度为2或1的有序序列            2.把得到的n/2个长度为2的有序序列再归并为长度为2*2的有序序列            3.按照2的方式,重复对相邻的有序子序列进行归并操作,直到成为一个有序序列为止。 排序以 ...
二分搜索,指的是对已经排好序的数据进行搜索,也叫折半查找。下面我用递归和非递归实现了这一个算法 /** * 二分搜索的递归实现 * * @param a * @param x * @return */ public int BSearch(int[] a, int x) { int left = 0, right = a.length - 1; return search(a, x, left, right); } public int search(int[] a, int x, int left, int right ...
Global site tag (gtag.js) - Google Analytics