自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 (python3.7+Anaconda3.7+CUDA10.0/CUDA10.1+Cudnn裸机配置tensorflow2.0-gpu的系列坑)

(python3.7+Anaconda3.7+CUDA10.0/CUDA10.1+Cudnn裸机配置tensorflow2.0-gpu的系列坑)安装历程这一个月十分水逆,买来的零件自己组装主机,可是刚买来电源就是坏的,吓得自己一身冷汗,但好在京东自营的服务是真的好,于是在一周内完成了组装及点亮。作为一个刚组装的机器,用的cpu为R5 3600、显卡为RTX2060s、内存/主板/固态等等都可以...

2019-12-03 13:42:06 533

原创 java的矩阵旋转与转置

nn矩阵的旋转(原地操作的话只能是nn矩阵)新建一个相同大小的矩阵,根据下一个位置的col对应原位置的row,row对应n- col-1;进行一列一列的赋值。原地操作,根据上述转化的条件,边界条件注意,偶数的化旋转1/4,奇数的话多选一个点。class Solution { public void rotate(int[][] matrix) { int len1 = matrix.length; int len2 = matrix[0].length;

2020-06-09 10:25:08 385

原创 合并集列题与理解

题意最近刷题刷到了一道关于字符串换位置的题目,采用的解法是合并集的方法,于是参考了CSDN上的一篇文章,发现很容易理解。题目给你一个字符串 s,以及该字符串中的一些「索引对」数组 pairs,其中 pairs[i] = [a, b] 表示字符串中的两个索引(编号从 0 开始)。你可以 任意多次交换 在 pairs 中任意一对索引处的字符。返回在经过若干次交换后,s 可以变成的按字典序最小的字符串。输入:s = “dcab”, pairs = [[0,3],[1,2]]输出:“bacd”解释:

2020-05-29 14:23:11 251

原创 Floyd环-双指针法查找链表中是否有环

题目描述理解图片转载于leetcode-知足常乐,题目中出现的一些问题有slow走过的路程为x+y+m(y+z),fast走过的路程为x+y+n(y+z),理解为取了个特例,得到x=z,然后表示相遇后将slow放置head后同时慢行,再次相遇后就到了环入口。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int

2020-05-26 15:14:58 191

原创 URL缓存机制-LeetCode每日一题

题目运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果密钥 (key) 存在于缓存中,则获取密钥的值(总是正数),否则返回 -1。写入数据 put(key, value) - 如果密钥已经存在,则变更其数据值;如果密钥不存在,则插入该组「密钥/数据值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的数据值留出空间。进阶:你是否可以在 O(1

2020-05-25 19:19:33 224

原创 二叉树相关的题目

1. 一颗二叉树是否位平衡二叉树2.二叉树中序遍历的下一个节点3.对称二叉树4.二叉树的前序,中序,后序遍历5.是否为二叉搜索树6.树的子结构7.二叉树的深度8.二叉树的Z字遍历9.二叉树的层序遍历保存1)递归方法//用递归做的public class Solution { ArrayList<ArrayList<Integer> > Print(TreeNode pRoot) { ArrayList<ArrayList<In

2020-05-19 11:34:48 99

原创 一句话将Arraylist转换为int[]

import java.util.Arrays;import java.util.List;import java.util.stream.Collectors; public class Main { public static void main(String[] args) { int[] data = {4, 5, 3, 6, 2, 5, 1}; // int[] 转 List<Integer> List<Inte

2020-05-17 12:02:48 535

原创 剑指Offer的输入流问题

1.数据流中的中位数如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。采用大小堆的方法,排序来实现,采用PriorityQueue的数据结构,该数据结构具有自动采用堆排序的队列特点,因此可以将较大的值存于minQueue(小顶堆),较小的值存在于maxQueue(大顶堆),此

2020-05-13 22:50:31 100

原创 滑动窗口

双端单调队列,并判断是否超出期限:class Solution {public: vector<int> maxInWindows(const vector<int>& num, unsigned int size) { vector<int> res; deque<int> s; for(unsigned int i=0;i<num.size();++i){

2020-05-13 17:48:52 129

原创 链表题

题外知识链表题要注意不要断表,并且设置哨兵位。StringBuffer的树的三种遍历的打印:前序遍历public void dfs(Node root){ if(root == null){ return; } System.out.println(root.val); dfs(root.left); dfs(root.right);}中序遍历public void dfs(Node root){ if(root == null){ return; } df

2020-05-12 16:49:55 88

原创 碎知识

巧用数组坐标双指针位运算,异或取余设置哨兵swap用加法或者异或的方法空位置赋值或者查看用 cur==null? null:cur;StringBuffer的length是根据当前字符串的长度来确定,并非预先设置空间。题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。斗牛场思想,过半人数,最后肯定那一个人是活着并且他们人.

2020-05-12 16:49:21 93

原创 Queue-队列-bfs遍历

Queue与Stack为两个接口,均需要通过具体的类来实现,可以通过LinkList链表list实现,stack<>()默认使用的是ArrayList<>()数组List实现的,而queue没有默认选择。题一:树的层序遍历通过一个队列来一直往里面加东西,然后依次取出。public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList<Integer> resu

2020-05-11 12:37:15 286

原创 栈知识-包含min函数的栈-栈的压入与弹出

1)取最大值,最小值min()可以用min = min > node? node:min;代替2)swap the number可以用+/-或者异或等具有可逆性质的符号来操作,省去了中间变量。包含min函数的栈1)常规做法采用另外一个stack_min来记录最小值,当栈顶元素与stack_min栈顶元素相同时候,一起弹出。最后取stack_min的peek()函数便是最小值。2)采用一个stack来维护的方法:import java.util.Stack;public class

2020-05-10 15:33:10 153

原创 顺时针打印路径的两种方法

题意输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 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.方法一方法一也是最容易想到的,采用传统的路径标记法,将走过的路径通过一个二维数组visited来维护,遍历过了便为true。因此整体的思路便为首先判断坐标是否越界,并且所选择的坐标是否被访问过,若没有则按一个方向始终前行,当无法再

2020-05-10 00:45:58 279

原创 二叉树练习题集合

遇到的问题,(不知道为什么)字符串列表—to—字符串数组需要加大小;(String[])(curpre1.toArray(new String[curpre1.size()]));字符串数组部分转列表大小不可变List<String> curin2 = asList(copyOfRange(str2,i+1,str2.length));remeberList...

2020-05-08 00:40:59 813

原创 Matlab提速方法-转

用过Matlab的人都知道,Matlab是一种解释性语言,存在计算速度慢的问题,为了提高程序的运行效率,matlab提供了多种实用工具及编码技巧。循环矢量化Matlab是为矢量和矩阵操作而设计的,因此,可以通过矢量化方法加速M文件的运行。矢量化是指将for循环和while循环转换为等价的矢量或矩阵操作。下面给出一个循环的例子:i=0;for n = 0:0.1:1000i=i+1;...

2020-05-05 11:08:12 5538

原创 LCP 12. 小张刷题计划-二分法的扩展

题意提高自己的代码能力,小张制定了 LeetCode 刷题计划,他选中了 LeetCode 题库中的 n 道题,编号从 0 到 n-1,并计划在 m 天内按照题目编号顺序刷完所有的题目(注意,小张不能用多天完成同一题)。在小张刷题计划中,小张需要用 time[i] 的时间完成编号 i 的题目。此外,小张还可以使用场外求助功能,通过询问他的好朋友小杨题目的解法,可以省去该题的做题时间。为了防止“...

2020-04-29 21:15:33 219

原创 面试题56 - I. 数组中数字出现的次数

题目表述一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。理解一看题目发现要求空间复杂度为O(1),一下子就彻底蒙了,本来打算用传统的方法创建一个大数组,里面有多少就加1,发现完全不行,想了半天没有想出来结果,于是借鉴了一下答案,发现了位运算是真的厉害;联想到了以前那道用位运算解八皇后的题:...

2020-04-29 00:18:07 110

原创 59. 把数字翻译成字符串-DP

给定一个数字,我们按照如下规则把它翻译为字符串:0翻译成”a”,1翻译成”b”,……,11翻译成”l”,……,25翻译成”z”。一个数字可能有多个翻译。例如12258有5种不同的翻译,它们分别是”bccfi”、”bwfi”、”bczi”、”mcfi”和”mzi”。请编程实现一个函数用来计算一个数字有多少种不同的翻译方法。样例输入:“12258”输出:5class Solution {...

2020-04-27 22:52:27 237

原创 1215. 小朋友排队

题意n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是 0。如果某个小朋友第一次被要求交换,则他的不高兴程度增加 1,如果第二次要求他交换,则他的不高兴程度增加 2(即不高兴程度为 3),依次类推。当要求某个小朋友第 k 次交换时,他的不高兴程度增加 k。请问,要让所...

2020-04-27 21:57:52 308

原创 77. 翻转单词顺序

题意输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student.",则输出"student. a am I"。样例输入:“I am a student.”输出:“student. a am I”直接反转用split分开后,注意空格,直接反转;class Solution { publ...

2020-04-27 11:27:59 165

原创 23. 矩阵中的路径-DFS

请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。注意:输入的路径不为空;所有出现的字符均为大写英文字母;样例matrix=[[“A”,“B”,“C”,“E”],[“S”,“F”,“C”,“S”],...

2020-04-26 19:47:08 143

原创 24. 机器人的运动范围 DFS

地上有一个 m 行和 n 列的方格,横纵坐标范围分别是 0∼m−1 和 0∼n−1。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格。但是不能进入行坐标和列坐标的数位之和大于 k 的格子。请问该机器人能够达到多少个格子?样例1输入:k=7, m=4, n=5输出:200<=m<=500<=n<=500<=k<=1...

2020-04-26 17:34:14 148

原创 1264. 动态求连续区间和

输入样例:10 51 2 3 4 5 6 7 8 9 101 1 50 1 30 4 81 7 50 4 8输出样例:113035

2020-04-25 23:43:54 109

原创 771. 字符串中最长的连续出现的字符

求一个字符串中最长的连续出现的字符,输出该字符及其出现次数,字符串中无空白字符(空格、回车和tab),如果这样的字符不止一个,则输出第一个。输入格式第一行输入整数N,表示测试数据的组数。每组数据占一行,包含一个不含空白字符的字符串,字符串长度不超过200。输出格式共一行,输出最长的连续出现的字符及其出现次数,中间用空格隔开。输入样例:2aaaaabbbbbcccccccdddddd...

2020-04-25 19:24:20 223

原创 720. 连续整数相加

读入两个整数值A和N,计算从A开始的N个连续整数的和。注意,如果读入的N为0或负数,则继续读取数字直至读入N值为正整数为止。输入格式共一行,包含整数A和若干个整数N。输出格式一个整数,表示从A开始的N个连续整数的和。数据范围1≤A≤1001≤A≤100,−100≤N≤100import java.util.*;public class Main{ public sta...

2020-04-25 18:32:05 527

原创 719. 连续奇数的和 2

输入N对整数对X,Y,对于每对X,Y,请你求出它们之间(不包括X和Y)的所有奇数的和。输入格式第一行输入整数N,表示共有N对测试数据。接下来N行,每行输入一组整数X和Y。输出格式每对X,Y输出一个占一行的奇数和。数据范围1≤N≤1001≤N≤100,−1000≤X,Y≤1000import java.util.*;public class Main{ public st...

2020-04-25 18:16:30 289

原创 714. 连续奇数的和 1

给定两个整数X和Y,输出在他们之间(不包括X和Y)的所有奇数的和。输入格式第一行输入X,第二行输入Y。输出格式输出一个整数,表示所有满足条件的奇数的和。数据范围−100≤X,Y≤100import java.util.*;public class Main{ public static void main(String[] agrs){ Scanner in...

2020-04-25 18:11:32 351

原创 76.和为S的连续正数序列

输入一个正数s,打印出所有和为s的连续正数序列(至少含有两个数)。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以结果打印出3个连续序列1~5、4~6和7~8。class Solution { public List<List<Integer>> findContinuousSequence(int sum) { Li...

2020-04-25 17:32:01 75

原创 Mysql学习笔记-常用指令

常用指令show databases;create database ***(name);use ***(name);show tables;增INSERT删DELETE改UPDATE查SELECT建表约束主键约束create table user( id int primary key, name varchar(20));+---------------...

2020-04-21 21:40:21 95

原创 希尔排序

希尔排序谈谈自己的理解希尔排序又叫什么:希尔排序又称递减增量排序算法什么是希尔排序:希尔排序是按增量分组进行的插入排序,是一种增量递减的高效插入排序。为什么要用希尔排序:若将一组逆序排序的数组经过插入排序,则每次比较的时间都为n,是一种很不高效的方式,因此选择分组进行跳跃式的插入排序,然后再递减分组增量,直到递减到增量为1变为基本的插入排序,此时的元素已经基本排序完成,节约了时间。代码实...

2020-04-01 21:38:19 127

原创 两数相除

两数相除通过移位使其为除数的2的整数幂次倍相减;import java.util.Scanner;public class Division { public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int a = scanner.nextI...

2020-03-31 22:19:06 96

原创 力库-优化的模拟乘法-字符串相乘

字符串相乘成功测试采用一个ans数组来存放每列相加的结果,但先不进位,最后一起进位;因为两数相乘,位数最多为两数位数相加,因此数组的长度定义为:int s1 = x.length; int s2 = y.length; int []ans = new int[s1+s2]; 然后相乘 for(int i = 0 ; i < s1 ; i ++){ ...

2020-03-31 18:47:26 167

原创 打折策划问题

问题描述多个商品采用不同的销售打折策略进行销售;分析java面向对象的语言,具有封装多态继承,并且易复用,易操作的特性,因此可以动态的加入一个商品,或者动态的加入一种打折策略。传统的面向过程的方法考虑的是通过if的语句来判断当前是哪个商品,采用的哪种策略,但是如果事先没有想周全,在代码完成的第一版想要添加某些功能,就必须去更改底层的所有代码。而java具有继承的特点,可以采用接口来实现,将...

2020-03-20 23:31:03 184

基于STM32的电子负载程序

基于stm32的电子负载的设计,其主要内容是实现一个恒压恒流

2018-04-23

空空如也

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

TA关注的人

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