自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jiasansui1573的博客

佳佳成长日记,记录自己的学习,记录一些生活感受之类的

  • 博客(14)
  • 收藏
  • 关注

原创 【leetcode】x的幂--位操作

几种位操作n & (n-1):该位运算技巧可以直接将 n 二进制表示的最低位 1 移除n & (-n):该位运算技巧可以直接获取 n 二进制表示的最低位的 1位一的个数移位操作public class Solution { // you need to treat n as an unsigned value public int hammingWeight(int n) { int res= 0; while(n!=0){

2021-09-23 11:09:04 127

原创 【数据结构与算法】二叉索引树(树状数组,Binary Indexed Tree)

最近做题碰壁了,遇到了一些高级的数据结构,以前从来没有见过用过的,决定对他们一一进行探索对于区间信息的维护和查询,有两个数据结构比较有用,一个是树状数组,一个是线段树,这篇文章先来介绍一下树状数组。树状数组二叉索引树(树状数组)定义引入问题二叉索引树(树状数组)定义一个Fenwick树或者说是二叉索引树是一个可以高效地更新数字表中元素和计算前缀和的数据结构。它可以以O(logn)的时间得到任意前缀和:∑i=1jA[i],1<=j<=N\sum_{i=1}^jA[i],1&lt.

2021-04-03 20:10:40 369

原创 【leetcode】需要逆向思考的问题

题记:本着正难则反的思想,有的时候,需要把思路反过来。本来以为这种思想只有约瑟夫环的时候让我眼前一亮,最近又碰到了一个,我就觉得有必要做一个整理。题目 戳气球方法一:逆向思考+记忆化搜索将戳气球变为放气球,在开区间(i,j)内,选择一个位置k放入一个气球,需要消耗的硬币为nums[i]*nums[k]*nums[j],之后再从(i,k)和(k,j)中各选择一个最优位置。自顶向下的带备忘录的搜索代码class Solution { int val[]; //将数组放到新的数组中,.

2021-03-26 16:49:39 128

原创 【leetcode】那些不像二分的二分

2021年3月21日leetcode周赛第三题写这道题是为了记录一下这个精妙的二分+贪心解法。题目如下:有界数组指定下标处的最大值class Solution { public int maxValue(int n, int index, int maxSum) { //left index左边的数量,right index右边的数量 int left = index,right = n-index-1; //二分,index位置最小的值为1,

2021-03-21 16:55:48 111

原创 【leetcode】 二叉树路径总和问题总结

对于二叉树的路径综合问题,随着约束逐渐放宽,解题的难度也逐渐增强。从根节点到叶节点从任意节点到叶节点从任意节点到任意节点leetcode上面有四道题,从易到难,分别为:路径总和路径总和II路径总和III路径总和IV (此题需要会员,因此直接看不到)路径总和解题思路只需要简单的递归就可以了class Solution { public boolean hasPathSum(TreeNode root, int targetSum) { if(root =

2021-03-20 15:40:02 368

原创 【leetcode】反转链表问题总结

第一次被问反转链表是被字节,我没想出来。后来在剑指offer上面看到了,我没做出来。在leetcode和牛客上遇见,是那么的熟悉。今天的每日一题还是思路不清晰。我意识到,我是时候写点什么了。希望下次遇到的时候思路清晰,一招毙命。反转链表I反转链表II反转链表I是把整个链表都反转,相对来说容易一些,可以有迭代和递归两种方式。迭代 public ListNode reverseList(ListNode head) { ListNode prev =null;

2021-03-18 19:43:43 110

原创 【leetcode】股票问题总结

股票问题一共有六道题:121、买卖股票的最佳时机122、买卖股票的最佳时机 II123、买卖股票的最佳时机 III188、买卖股票的最佳时机 IV309、最佳买卖股票时机含冷冻期714、买卖股票的最佳时机含手续费这些问题主要的不同在于交易的次数kk=1class Solution { public int maxProfit(int[] prices) { int len = prices.length; if(len<2) return 0;

2021-01-26 12:53:25 130

原创 Cygwin下安装apt-cyg

Cygwin下安装apt-cyg前言痛点解决方案配置源加别名参考前言因为平时用的都是Windows,虽然也安装了Ubuntu虚拟机,但是每次启动都不太方便,而且无法在Windows中很好地提高生产力。所以安装了Cygwin,安装Cygwin的过程很简单,和普通软件差不多,到官网下载自己电脑版本的安装就好。痛点平时在Linux系统中,如Ubuntu和CentOs下有apt(apt-get)和yum这种软件管理工具可以用。但是在Cygwin却没有这两种,而是有一个叫apt-cyg的包,在官方提供的gui

2020-08-30 22:28:46 835

原创 Chapter 1 软件构造的视图和质量目标

多维度软件视图 通过时期(phases): 构建时期和运行时期(build- and run-time views) 构造时期: 想法-&amp;gt;需求-&amp;gt;设计-&amp;gt;代码-&amp;gt;可安装或可执行的包通过动态(dynamics): moment and period views 通过等级(levels): code and component views本博客内容来自哈尔滨工...

2018-06-27 16:22:34 138

原创 git使用指南

git快速上手对于许多人来说git这个工具并不需要太精通,只是将自己的代码放到github上进行保存,或者交作业的需要,这篇文章教你如何利用git上传到github以防止电脑坏了代码丢失秘钥在向github传代码的过程中为了不让他人对你的代码 库进行更改,就要对代码有一定的防护机制,这个防护体现在代码在网络的传输过程和代码库的安全两个方面。因此在库中会有公钥,你自己要有秘钥。githu...

2018-06-17 19:40:16 190 1

原创 JAVA学习-Collections类

JAVA学习-Collections类List 数组Set 集合Queue 队列*待更新List 数组 List是一个继承了Collectiions的接口 ,这个接口的用户可以精确地控制每个元素被插入在列表中的位置,用户可以通过index找到数组中的元素。 —— [ 官方文档]使用简单的符号标识不同的标题,将某些文字标记为粗体或者斜体,创建一个链接等,详细语...

2018-06-06 11:05:33 362

原创 JAVA的学习资源

Textbooks•Think Java: How to Think Like a Computer Scientist. Version 6.1.2 •By Allen B. Downey and Chris Mayfield. •Introduction to Programming Using Java, Seventh Edition.Version 7.0, August 2014

2017-07-05 23:20:28 212

原创 两份学习Kotlin和机器学习的资料

Kotlin学习资料Kotlin官网教程,官网上有详细的教程,包括怎么搭建环境,使用什么样的工具,怎么学习语法等 Google教程机器学习资料机器学习最权威的一本书是MIT的《Deep Learning》 中文版教程

2017-07-04 20:22:16 396

原创 Kali Linux的更新

配置更新源

2017-06-23 23:27:11 948

空空如也

空空如也

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

TA关注的人

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