- 博客(68)
- 收藏
- 关注
原创 两数相加
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -...
2019-02-13 21:39:51
251
原创 leetcode-两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]1.暴力...
2019-02-12 16:50:25
144
原创 剑指offer-复杂链表的复制
输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)分析直接思路: 第一步复制原始链表上的每一个节点,用next指针进行连接,这一步比较好处理;第二步设置每一个节点的random指针。假设原始链表中的某个节点N的随机指针ra...
2018-11-28 15:54:44
234
原创 wait()方法及notify()练习题
1.写两个线程,一个线程打印 1~52,另一个线程打印A~Z,打印顺序是12A34B...5152Z;class printNumber implements Runnable{ private Object obj;//声明一个类的引用 public printNumber(Object obj){ this. obj= obj;//通过构造器将共享的资源...
2018-11-18 23:10:47
474
原创 程序设计方法学-上机
要求一、完成内容包含以下内容: 1.题目分析 2.算法构造 在此论证算法设计中的一些必要的设计依据。 3.算法实现程序源代码(请写入必要的注释)。 4.运行结果 5.经验归纳 1.一个人赶着鸭子去每个村庄卖,每经过一个村子卖去所赶鸭子的一半又一只。这样他经过了七个村子后还剩两只鸭子,问他出发时共赶多少只鸭子?经过每个村子卖出多少只鸭子?(1)题目分析:...
2018-11-18 20:03:57
346
原创 leetcode-回文链表(Java实现)
请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?方法1:利用栈结构,需要O(N)的空间class Solution { public boolean isPalindrome(L...
2018-11-13 22:05:22
333
原创 二叉树的和为某一路径的值
题目描述输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)思路分析:首先思考节点值的和为输入的整数,每条路径都一定是从根节点到叶子节点,在数据结构中从根节点到叶子节点的遍历称之为深度优先遍历DFS。因此整个过程可以采用先序遍历方式的DFS,...
2018-11-09 22:29:55
160
原创 二叉搜索数的后序遍历序列
题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。public class Solution { public boolean VerifySquenceOfBST(int [] sequence) { if(sequence==null||sequence.lengt...
2018-11-06 17:01:52
131
原创 JAVA版CORBA程序1——HelloWorld
实现详解:1 编写IDL接口HelloWorld.idl:module sample{interface HelloWorld{ string sayHello(); }; };1说明:CORBA处理字符串有:String和wstring两种类型,string类型主要用于处理ASCII类型的字符串,wstring用于处理多字节的字符串,例如:中文。2编译IDL接口:X:\corba...
2018-11-04 20:07:00
224
原创 Java面向对象三大类及异常处理
1.编程题:要求:1).Person类有name,age,salary属性,要求实现至少两个构造方法,并且属性私有,提供对应的getter、setter。2).覆写toString方法,要求在System.out.println()函数中传递Person对象能打印出三个属性值而不是对象地址。3).覆写equals方法,要求两个Person类对象的值相同时返回true。class Pe...
2018-10-31 17:34:29
149
原创 Java-三个特殊类
1.String类1.1String的两种实例化方式a.直接赋值String str=“hello”;b.通过构造方法实例化String对象1.2字符串相等比较str.equals(str1)public boolean equals(String str1) 1.3字符串常量是String类的匿名对象小tips:在日后的开发过程之中,如果要判断用户输入...
2018-10-31 14:42:19
219
原创 剑指offer 顺时针打印矩阵
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16则依次打印出数字:1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10通常当我们遇到一个复杂的问题的时候,我们可以用图形帮助我们思考。由于我们是以从外...
2018-10-30 20:35:52
180
原创 JAVA接口练习题
1.说出下面程序的执行结果:interface InterfaceA { String S = "good "; void f(); } abstract class ClassA { abstract void g(); } class ClassB extends ClassA implements InterfaceA { void g() { System.ou...
2018-10-30 16:35:55
5764
2
原创 KFC订餐系统
同学们应该都去麦当劳或肯德基吃过快餐吧?请同学们参考肯德基官网的信息模拟肯德基快餐店的收银系统,合理使用C++/python/Java,结合设计模式(2种以上)至少实现系统的以下功能:1.正常餐品结算和找零。2.基本套餐结算和找零。3.使用优惠劵购买餐品结算和找零。4.可在一定时间段参与店内活动(自行设计或参考官网信息)。5.模拟打印小票的功能(写到文件中)。用时2周。...
2018-10-27 16:30:04
707
原创 剑指offer 合并两个排序的链表
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { ...
2018-10-25 20:09:14
114
原创 剑指offer 反转链表
题目描述输入一个链表,反转链表后,输出新链表的表头。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListNode ...
2018-10-24 19:13:40
95
原创 JAVA-面向对象下-作业
1.定义一个Father和Child类,并进行测试。要求如下:1)Father类为外部类,类中定义一个私有的String类型的属性name,name的值为“zhangjun”。 2)Child类为Father类的内部类,其中定义一个introFather()方法,方法中调用Father类的name属性。3)定义一个测试类Test,在Test类的main()方法中,创建Child对象,并调用i...
2018-10-23 19:33:20
396
原创 各种排序算法的实现
插入排序基本思想:每一步将一个待排序的元素,按其排序码的大小,插入到前面已经排好的序的一组元素的合适的位置上去,直到元素全部插完为止。1.直接插入排序基本思想: 当插入第i个元素时,前面的array[0]、array[1]、array[2]……array[i-1]已经排好序,此时用array[i]的排序码与array[i-1]、array[i-2]……的排序码进行比较,找到插入...
2018-10-20 15:39:56
808
原创 剑指offer 调整数组顺序使奇数在偶数的前面
题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 public class Solution { public void reOrderArray(int [] array) { for(int i=0;i<array.leng...
2018-10-19 16:07:47
107
原创 剑指offer 矩形覆盖 代码及思路
依旧是斐波那契数列2*n的大矩形,和n个2*1的小矩形其中target*2为大矩阵的大小有以下几种情形:target <= 0 大矩形为<= 2*0,直接return 1; target = 1大矩形为2*1,只有一种摆放方法,return1; target = 2 大矩形为2*2,有两种摆放方法,return2; target = n 分为两步考虑: ...
2018-10-16 14:47:32
117
原创 剑指offer 变态跳台阶
n个台阶会有一次n阶的跳法。分析如下:f(1)=1f(2)=f(2-1)+f(2-2) //f(2-2)表示2阶一次跳2阶的次数。f(3)=f(3-1)+f(3-2) +f(3-3)...f(n)=f(n-1)+f(n-2) +f(n-3)+.....+f(n-(n-1))+f(n-n)说明:这里的f(n)代表的是n个台阶有1,2,....,n阶的跳法数。 n=1时...
2018-10-15 17:22:35
77
原创 Java面向对象上-作业
1.创建一个Test类,包含有一个public权限的int型成员变量与一个char类型的成员变量,观察在main方法中的初始值。public class Test{ public static int n1; public static char n2; public static void main(String[] args){ ...
2018-10-14 17:25:02
480
原创 Java 方法与数组作业
1. 使用for循环打印乘法口诀表public class Example{ public static void main(String [] args){ for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ int result=i*j; ...
2018-10-14 16:44:12
438
原创 剑指offer 跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。斐波那契数列:斐波那契数列指的是这样一个数列: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368。...
2018-10-14 13:45:54
106
原创 Linux进程控制-进程创建/终止/等待&封装fork/wait&函数popen/system
进程创建在linux中fork函数是很非常重要的函数,它是从已存在进程中创建一个新进程,原进程是父进程,新进程是子进程。#include<unistd.h>pid_t fork(void);返回值:子进程返回0,父进程返回子进程的id,出错返回-1.进程调用fork,当控制转移到内核中的fork代码后,内核做:分配新的内存块和内核数据结构给子进程 将父进程部分数据...
2018-10-12 17:10:04
1320
原创 进程概念
调度算法在操作系统中调度是指一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。对于不同的的系统和系统目标,通常采用不同的调度算法,目前存在的多种调度算法中,有的算法适用于作业调度,有的算法适用于进程调度;但也有些调度算法既可以用于作业调度,也可以用于进程调度。通常将作业或进程归入各种就绪或阻塞队列。 调度算法要求:高资源利用率、高吞吐量、用户满意等原则。 进程...
2018-10-11 16:40:55
388
原创 剑指offer 旋转数组的最小值
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。采用二分法解答这个问题,mid = low + (high - low)/2需要考虑三种情况:(1)a...
2018-10-11 13:54:36
114
原创 剑指offer day04 重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。/** * Definition for binary tree * public class TreeNode { * int v...
2018-10-09 16:52:28
86
原创 RPG角色生成器
1.功能描述几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。2.游戏角色应有的属性本题目要求的游戏角色应有以下属性:名字、性别、种族、职业、力量、敏捷、体力、智力、智慧、生命值和魔法值。名字:不超过50个字符。性别:可以选择男性和女性。种族:一共可选五个种族,人类、精灵、兽人、...
2018-10-08 13:24:43
416
原创 24点小游戏
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <string.h>#include <math.h>#define LING 1E-6 //表示不合法的计算结果#define CONT 4#define VOLUE 24float num[CONT];c...
2018-09-30 11:29:23
185
原创 《剑指offer》 从尾到头打印单链表 day03
栈思路:class Solution {public: vector<int> printListFromTailToHead(ListNode* head) { vector<int> value; ListNode *p=NULL; p=head; stack<int> stk...
2018-09-29 14:50:00
84
原创 Linux--开发工具
1.除了vim, 还有哪些常用的牛逼的编辑器, 并能够横向对比编辑器之间的区别和优缺点.1.Vim Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。2. Eclipse Eclipse是一款很酷的开源代码编辑器,它拥有代码高亮和智能提示等强大的功能。在Ecli...
2018-09-28 18:03:39
450
原创 《剑指offer》 替换空格 day-02
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。思路:我们从字符串的末尾开始复制和替换。 1、定义两个指针,p1和p2。p1指向原始字符串的末尾,p2指向替换后字符串的末尾。 2、向前移动指针p1,逐个把它指向的字符复制到p2指向...
2018-09-28 15:28:32
123
原创 《剑指offer》二维数组的查找
题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。定义一个这样的数组:比如查找数字7,我们先用右上角的数字进行比较,7<10,说明7在10这列的左边,因此剔除掉最后一列然后再从右上角开始比较,7<9,再剔除最后一列...
2018-09-27 18:10:33
111
原创 搜索二叉树2
#pragma once #include<stdio.h>#include<malloc.h>#include<stdlib.h>typedef int BSTDataType;typedef char* BSTKeyType;typedef char* BSTValueType;typedef struct BSTreeNode{ s...
2018-09-20 23:35:03
113
转载 VS2013 调试时的 0xCCCCCCCC 读取字符串的字符时出错
0xcccccccc : Used by Microsoft's C++ debugging runtime library to mark uninitialised stack memory0xcdcdcdcd : Used by Microsoft's C++ debugging runtime library to mark uninitialised heap memory0xfee...
2018-09-20 23:32:08
3412
原创 搜索二叉树1
#pragma once #include<stdio.h>#include<malloc.h>#include<stdlib.h>typedef int BSTDataType;typedef struct BSTreeNode{ struct BSTreeNode* _left; struct BSTreeNode* _right;...
2018-09-20 21:54:26
103
原创 词频统计
题目描述:做一个词频统计程序,该程序具有以下功能:(1)可倒入任意英文文本文件(2)统计该英文文件中单词数和各单词出现的频率(次数),并能将单词按字典顺序输出。(3)可能的话可否将单词及频率写入数据库(文件)思想:1.使用文件操作。 2.将英文文章先读到一个字符串中。 3.将英文文章中的单词分离时,主要使用strtok函数。 4.将英文单词...
2018-09-20 21:22:02
1182
原创 哈希函数--开放定址法
哈希概念顺序搜索以及二叉树搜索树中,元素存储位置和元素各关键码之间没有对应的关系,因此在查找一个元素时,必须要经过关键码得多次比较。搜索的效率取决于搜索过程中元素的比较次数。理想搜索方法:可以不经过任何比较,一次直接从表中得到要搜索的元素。如果构造一种存储结构,通过某种函数(hashFunc)使元素的存储位置与他的关键码之间能够建立一一映射的关系,那么在查找时通该函数可以很快找到该元素...
2018-09-12 22:15:06
1141
原创 求两个正整数的最大公约数和最小公倍数。
题目:求两个正整数的最大公约数和最小公倍数。基本要求:1.程序风格良好(使用自定义注释模板),两种以上算法解决最大公约数问题,提供友好的输入输出。提高要求:1.三种以上算法解决两个正整数最大公约数问题。#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<stdlib.h>#include...
2018-09-07 19:18:40
658
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人