算法
文章平均质量分 81
哥布林飞桶
深圳大学生
展开
-
n皇后问题及优化
1.编写蛮力法解决n皇后问题,求出生成解的个数和生成树的节点个数。2.编写回溯法解决n皇后问题,求出生成解的个数和生成树的节点个数,并且和蛮力法进行比较验证结果。3.对回溯法和蛮力法进行性能的比较。4.对回溯法进行性能优化。1. 编写蛮力法解决n皇后问题,求出生成解的个数和生成树的节点个数。只要使用一维数组就可以表示排列情况,比如a[2]的值表示第3行摆放的位置,这样做的好处就是不用考虑同一...原创 2018-01-16 20:11:04 · 4662 阅读 · 0 评论 -
c++实现哈夫曼huffman压缩文本
哈夫曼压缩原理就是构建二叉树,出现频率高的字母用更少的位数来表示,实现压缩的效果比如字符串abcbbc构建哈夫曼树这样构建出编码表b->0,a->10, c->11原本6个字符要48位来表示,现在只需要9位来表示即可1.首先将文本文件的每一个字符进行统计,构建编码表,这个编码表大概50几kvoid readTxt(string file,Character *cList...原创 2018-01-16 20:38:17 · 6074 阅读 · 5 评论 -
java用递归和非递归实现链表逆序
传统的逆序链表方法是使用三个指针来记录节点的状态,防止链表断裂。Node节点public class Node { private int data; private Node next; public Node(int data){ this.data = data; next = null; } public int ...原创 2018-04-06 20:10:14 · 831 阅读 · 1 评论 -
递归与非递归实现汉诺塔
递归的方法下面的方法表示借助B,把n块从A移到C1.如果是只有1块,直接从A移到C就可以了2.如果是大于1块,将n-1块借助C移到B存起来,然后最底下一块移到C,最后再将B上的n-1块借助A移到Cpublic static void hanTower(int n,char A,char B,char C){ if(n==1){ System.out.prin...原创 2018-04-30 21:29:45 · 367 阅读 · 1 评论 -
java调用巴赫沃兹高通,低通滤波
在安卓开发的时候有时间要对音频,振动等信号进行滤波,下面是一段音频信号经过高通滤波后和低通滤波后的效果可以看到滤波效果是只过滤出需要频率的信号,将噪音去掉下面是java代码public class Filter { private static double rate = 0.000000001; private static Double[] audha = {1.0, -1.9...原创 2018-05-29 21:27:34 · 3725 阅读 · 0 评论