自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

转载 ANSYS命令

八天学会Ansys命令流 为方便大家的交流和学习,特推出”跟我学命令流”课程 本课程分为三部分:前处理,加载求解,后处理 每部分的学习时间:10天,共计30天 每天学习大约10个命令 希望本课程对大家能有所帮助第一天目标:熟悉ANSYS基本关键字的含义k –> Keypoints 关键点 l –> Lines 线 a –> Area 面 v –> Volumes 体 e –> El

2015-05-24 21:04:28 3959

原创 青蛙跳台阶

题目描述:一个台阶总共有n级,如果一次可以跳1级,也可以跳2级。求总共有多少总跳法,并分析算法的时间复杂度。解题思路:这是一道典型的用递归求解的题目。 我们可以这样考虑问题:1.当只有一级台阶时,那么只有一种跳法;2.当有两级台阶时,那么就会有两种跳法:一次跳一级跳两次或一次跳两级。3.当n>2时,那么我们就以用第一次跳时就可以跳一级或者两级,,如果第一次跳一级,那跳法数目就等于后面n-1阶台阶的

2015-05-23 15:01:14 436

原创 二分归并排序

二分归并排序归并排序建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。 将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。 将两个有序序列,合并成一个新的有序序列,分别取两个有序序列的最小值,将两个最小值比较,取最小最坏情况下时间复杂度:O(nlogn) 平均情况下时间复杂度:O(nlo

2015-05-22 20:30:45 3918

原创 哈夫曼编码

概念哈夫曼树可用于构造代码总长度最短的编码方案。具体构造方法如下:设需要编码的字符集合为{d1,d2,…,dn},各个字符在电文中出现的次数集合为{w1,w2,…,wn},以d1,d2,…,dn作为叶结点,以w1,w2,…,wn作为各叶结点的权值构造一棵二叉树,规定哈夫曼树中的左分支为0,右分支为1,则从根结点到每个叶结点所经过的分支对应的0和1组成的序列便为该结点对应字符的编码。这样的代码总长度最

2015-05-22 15:56:52 581

原创 哈夫曼树

概念哈夫曼编码应用广泛,如JPEG中就应用了哈夫曼编码。哈夫曼树又称最优二叉树,是一种带权路径长度最短的二叉树。所谓树的带权路径长度,就是树中所有的叶结点的权值乘上其到根结点的路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。树的带权路径长度记为WPL= (W1*L1+W2*L2+W3*L3+…+Wn*Ln),N个权值Wi(i=1,2,…n)构成一棵有N个叶结点的二叉树,相应的叶结

2015-05-21 21:51:05 395

原创 java数组操作类:Arrays

Arrays是一个定义在java.util包中专门进行数组操作的类,这个类中定义了所有与数组有关的基本操作:二分查找,相等判断,数组填充等public static boolean equals(int[] a,int[] b),判断两个数组是否相等,被重载多次,可比较各种类型的数组public static void fill(int[] a,int val),将指定内容填充到数组中,被重载多

2015-05-20 19:22:57 464

原创 对公司所有员工的年龄排序

思路这道题其实与埃氏筛法 求素数 所用的思想是相同的,都是选取一个数组用来做标记,牺牲空间换取时间如果给定一组数,要求判定这组数中哪些数是素数,则只需要根据埃氏筛法,判断该数的标记数组是true还是false即可。java代码:要求:时间复杂度O(n),只允许使用常量大小的辅助空间package com.me;import java.util.Arrays;public class AgeSort

2015-05-20 11:16:43 978

原创 快速排序

基本思想用首元素 x 作划分标准,将输入数组 A划分成不超过 x 的元素构成的数组 AL,大于 x 的元素构成的数组 AR. 其中 AL, AR从左到右存放在数组 A 的位置。递归地对子问题 AL和 AR 进行排序,直到子问题规模为 1 时停止.划分过程:用首元素作为基准,从后往前找第一个比首元素小的元素,找到后停止,然后从前向后找第一个比首元素大的元素,然后将大元素与小元素做交换,最后返回划分的位

2015-05-20 10:23:11 340

原创 二叉树的三种遍历方法(递归)

package com.cs;//定义节点class Node{ int value; Node leftTree; Node rightTree; public Node(int value){ this.value = value; } }public class TraversalTwoForkTree { public s

2015-05-15 22:14:28 577

原创 二叉树中和为某一路径的值

题目题目:输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。路径是从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。注意:路径必须是从根节点开始一直到叶节点才可以。。。刚开始一直没有注意到这一点。。思路打印出二叉树中节点值的和为输入整数的所有路径,当访问到叶节点的时候,我们不知道前面经了哪些节点,因此我们需要一个集合来存储经过的节点,(该集合必须是先进后出)路径必须是从

2015-05-15 21:52:58 996

原创 java的Queue集合

Queue用于模拟队列这种数据结构,队列通常是“先进先出”(FIFO)容器常用方法: boolean offer(Object e) : 向队列末尾追加新元素,当使用容量有限制的队列时,此方法通常比add好 void add(Object e):将指定元素加入队列的尾部 Object poll( ) : 获取队列首元素,获取后该元素就从队列中被删除。当队列中没有了元素poll()就返回Nul

2015-05-15 19:58:28 372

原创 java的list集合

list集合代表元素有序(这里的有序并不是指按大小排列,每个元素都有其对应的顺序索引),且集合中的元素可重复,可以通过索引访问指定位置的元素。 list集合默认按元素的添加顺序设置元素的索引。 但是集合中的元素重新排序后,元素的索引也会改变。package com.cn;import java.util.ArrayList;import java.util.List;public class

2015-05-15 17:28:01 455

原创 从上往下打印二叉树

题目题目:从上往下打印二叉树的每个节点,同一层的节点按照从左到右的顺序打印思路如果没有想到使用容器,这个题很难往下做。 如果使用容器的话:先打印根节点的值,然后把它的两个子节点放入容器中,先取出左节点,打印其值,然后把它的两个节点放入容器,再打印右节点,再把它的两个节点放入容器,依次类推。。java代码package com.co;import java.util.LinkedList;class

2015-05-15 14:41:48 434

原创 java的Set集合:TreeSet集合

1.TreeSet类TreeSet使用红黑树的数据结构来存储集合元素 TreeSet也不能存放重复对象,但是TreeSet会自动排序,如果存放的对象不能排序则会报错,所以存放的对象必须指定排序规则。排序规则包括自然排序和客户排序。如果希望TreeSet能正常运转,只能添加同一种类型对象。  ①自然排序:TreeSet要添加哪个对象就在哪个对象类上面实现java.lang.Comparable接口,

2015-05-14 20:32:40 2325

原创 java 链表

节点类:Node 链表操作类:Link类,专门负责处理节点关系class Node{ //Node类负责创建节点的属性、方法 private String data; private Node next; public Node(){ } public Node(String data){ this.data=data;

2015-05-13 22:00:54 337

原创 java基础知识总结2

1.面向对象的程序的三个特性:  封装性 封装即把对象的属性和行为看成一个密不可分的整体,另一个就是信息隐蔽性,即不允许外界随意修改或可见  继承性 单继承和多继承  多态性 方法重载:允许多个方法使用同一个名字,但是方法的参数个数和参数类型不同 对象多态:2.类是对象的模板,对象是类的实例 类中包括属性和方法。 在主类中定义,并且由主方法直接

2015-05-13 21:49:13 406

原创 java基础知识总结

1.关于类的定义 在一个*.java文件中可以有多个class定义,但是只能有一个public class定义 public class 定义:类名必须与文件名保持一致,否则编译不通过 class 定义:类名可以与文件名不一致,在一个.java文件中,可以有多个class的定义,编译之后分为不同的.class文件。2.系统输出 System.out.println(输出内容); 输出后换行

2015-05-13 21:38:31 498

原创 java的Set集合:HashSet集合

Set最大的特性就是不允许在其中存放的元素是重复的。 根据这个特点,我们就可以使用Set 这个接口来实现前面提到的关于商品种类的存储需求。Set 可以被用来过滤在其他集合中存放的元素,从而得到一个没有包含重复元素的集合。1.HashSet类 在set类型的集合中,如何判断元素是否重复呢,这就需要使用Object.equals方法,但如果元素很多了,添加一个新元素时,比较的次数 就很多,例如已经

2015-05-12 22:22:08 677

原创 二叉树镜像

题目题目:输入一个二叉树,输出该二叉树的镜像思路先序遍历这棵树的每个节点,如果遍历到的节点有子节点,就交换他的子节点java代码package com.cv;//定义结点class Node{ int value; Node leftTree; Node rightTree; public Node(){} public Node(int value){

2015-05-12 19:52:18 401

原创 二叉树的子结构

题目题目:输入两个二叉树A和B,判断B是不是A的子结构。思路判断B是不是A的子结构可以分两步:在A中是否存在与B根节点值相同的节点 该步就是在二叉树A中按照前序遍历的方式查找是否有与B根节点相同的节点在A中找到与B根节点值相同的节点之后,判断该节点的子树是否跟B的结构相同 在该步中,判断A的左子树与B的左子树是否相同,A的右子树是否与B的右子树相同,特别应该注意的是:如果B的节点为null,

2015-05-11 22:09:48 435

原创 重建二叉树

题目题目:已知某二叉树的前序遍历序列与中序便利序列,请重建该二叉树。假设前序遍历序列与中序遍历序列的结果中不包含重复数字。 前序遍历序列:{1,2,4,7,3,5,6,8} 中序遍历序列:{4,7,2,1,5,3,8,6}思路前序遍历就是:根节点——>左子树——>右子树,所以我们可以知道前序遍历序列中的第一个元素就是根节点root 中序遍历就是:左子树——>根节点——>右子树,由于在前序遍历序

2015-05-11 21:48:26 399

原创 【leetcode】——从两个有序数组中寻找他们并集的第k小元素

题目题目:There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log(m + n)).两个排好序的数组A,B,大小分别为m,n,找到两个数组中所有元素

2015-05-09 11:17:20 6489

原创 选择问题(选最大,选最小,选第k小)

选择问题:一个含有n个不相等实数的集合,输出集合中的第i小元素如果i=1,则为寻找最小元素 如果i=n,则为寻找最大元素 如果i处在集合序列的中间,则为寻找中位数选最大算法:顺序比较,首先假定第一个元素为最大,接着最大元素与第二个元素比较,若最大元素小于第二个元素,则两者交换,否则继续与第三个元素比较最多需要做n-1次比较运算 最坏情况下时间复杂度:W(n)= n-1选最大最小同时求最大元素与

2015-05-08 22:20:19 1871

原创 二分查找2

题目1题目:一个已排好序的数组,在某个点被旋转,如:{0,1,2,3,5,6,7}变为{5,6,7,0,1,2,3} 从被旋转后的数组中查找某个数是否存在按照二分查找的思路做,mid = (start + end)/2,如果a[start] < a[mid],说明前半部分元素是递增的,否则说明后半部分元素是递增的,然后判断目标元素在哪个区间,递归查找。题目2题目:同题目1相同,只是已排好序数组中允

2015-05-07 22:36:24 388

原创 删除已排序数组中的重复元素

题目1题目:删除数组中重复的元素,数组是排好序的,使所有的元素都只出现一次,如{1,1,2,3}变为{1,2,3},不允许申请额外的数组。时间复杂度:O(n) 空间复杂度:O(1)思路比较难表达清楚,其实只要画个图就很好理解,前后两个索引 index 与 i,只要出现重复元素index就呆在原地不动,i继续往前走,index与i之间的元素都是重复的元素。package com.cn;public

2015-05-07 22:15:43 1023

原创 顺时针打印矩阵

题目【剑指offer,面试题20】题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每个数字。思路看着比较简单的一道题目,但是想起来比较费劲,剑指offer上面的解题过程没看懂,以下思路借鉴自【算法06】顺时针打印矩阵首先矩阵不一定是方阵,所以按照对角线的思路是不可行的一个矩阵,给定起点(startX,startY)和终点(endX,endY)(即位于对角线上的两个点)就可以打印一周,然后向里

2015-05-05 22:32:40 337

原创 最优二叉检索树

题目给定数据集 S = < x1 , x2 , …, xn>, 及S 的存取概率分布如下: P = < a0 , b1 , a1 , b2 , a2 , … , bn, an > 求一棵最优的( 即平均比较次数最少的)二分检索树.动态规划思路令w[i,j]是P[i,j]中所有概率(数据与空隙)之和 设m[i,j] 是相对于输入S[i,j] 和P[i,j] 的最优二叉搜索树的平均比较次数

2015-05-05 10:01:32 1336

原创 处理二叉检索树的遍历序列

概念普及二叉树:每个节点都不能有多于两个的儿子 二叉检索树:对于树中的每个节点X,左子树中所有关键字的值小于X的值,右子树中所有关键字的值大于X的值 前序遍历:根节点——>左子树——>右子树 后序遍历:左子树——>右子树——>根节点 中序遍历:左子树——>根节点——>右子树前序遍历的结果:20,15,10,12,18,25,30 后序遍历的结果:12,10,18,15,30,25,20

2015-05-04 19:39:05 484

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除