自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 剑指 Offer . 二进制中1的个数(4.2)

剑指 Offer . 二进制中1的个数(4.2) 题目描述: 请实现一个函数,输入一个整数(以二进制串形式),输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。 示例 1: 输入:00000000000000000000000000001011 输出:3 解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 '1'。 解题思路: 二进制的&运算 n&(n-1)

2021-04-02 21:54:10 53

原创 剑指 Offer . 第一个只出现一次的字符(3.31)

剑指 Offer . 第一个只出现一次的字符(3.31) 题目描述: 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 示例 1: s = "abaccdeff" 返回 "b" s = "" 返回 " " 解题思路: 面对一个字符串,判断里面单的字符,首先要想到转换成字符数组,挨个遍历其中的字符。然后根据hashmap的特点不能存储重复元素,所以遍历的过程将字符作为key往hashmap 中添加,如果有重复,在value中标记,最后再遍历得到value中第一

2021-03-31 11:20:41 52

原创 剑指 Offer . 从尾到头打印链表(3.28)

剑指 Offer 替换空格(3.28) 题目描述: 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。。 示例 1: 输入:s = "We are happy." 输出:"We%20are%20happy." 解题思路: ​ 由于字符串是不可变序列,所以使用StringBuilder, 将原字符串转化为Char数组,然后遍历,如果不为空的话采用append方法将该元素拼接,如果遇到空格的话,则拼接%20; 具体代码: class Solution { public String

2021-03-28 10:19:10 58

原创 剑指offer 求解数组中重复的数(3.28)

剑指offer 求解数组中重复的数(3.28) 题目描述: 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入: [2, 3, 1, 0, 2, 5, 3] 输出:2 或 3 解题思路: 数组中每个数都有索引下标,可以通过原地调换位置把让数组中每个数和自己索引值一样,如果碰到两个一样的数则返回。 具体代码: public int findRep

2021-03-28 10:12:13 71

原创 选择排序java实现

选择排序 排序思想:选择排序(Selection sort)是一种简单直观的排序算法,每次遍历选出数组中最大的元素并且把它放到最后一位,然后除去已经选出的元素,对其他元素进行相同的操作直到排好。 排序步骤: 第一步: 进行遍历选出数组中元素最大的元素并且记录其索引。 int max = 0; for (int begin = 0; begin <= end; begin++) { if (arr[max] <= arr[begin]) { max = begin ;

2021-03-26 18:11:35 50

原创 冒泡排序及优化

冒泡排序 排序思想 ​ 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。 算法步骤: ​ 第一步:比较相邻元素,如果第一个比第二个大,就交换他们。 for(int begin =0;begin<arr.length-1;begin++) {

2021-03-26 13:53:27 170

原创 实现单链表头插尾插。

数据结构--单链表头插尾插头插法:尾插法: 头插法: 该方法从空表开始,生成新的结点,并将读取到的数据存放在新结点的数据域中,然后将新结点插入到当前链表的表头,即头结点之后。 下面展示代码 #include<stdio.h> #include<stdlib.h> typedef struct LNode{ int data; struct LNode *next; }LNode , *LinkList; LinkList List_HeadInsert(L

2020-11-21 22:19:49 131

原创 需求工程大作业

一、领域业务简单介绍:        随着我国经济实力的发展,"精准扶贫"工作也已经普及到各大高校,比如在我校团委学生会助困部每年围绕“奖助贷勤免补征”七字方针开展工作,对各个家庭经济困难学生进行困难帮扶。其中勤工助学就是其中一个很大的模块,但由于过程繁琐,工作很难做的公开化,公平化。考核难以做到系统化,合理化,所以“勤工助学”系统就应运而生,成为各大高校勤工助学发展使用的趋势。 二、获取问题:    &nb

2020-11-05 21:32:04 212

原创 LinkedList底层方法实现

LinkedList 底层实现与分析。 Learning Notes: 一、 学习了LinkedList之后,手写了简单的四个方法(大牛勿喷)。 笔记如下 二、编程思路 1.1 节点的属性定义:前驱节点,后继节点、数据域 1.2 add()方法:有两种情况 (1)当链表一个节点都没有的时候,首先创建一个节点,然后将前驱节点和后继节点都赋值为null,这样头节点和尾节点都是同一个节点。 (2)当链表中存在节点的时候,默认采用尾插法的形式添加,还是先创建一个节点,然后将新节点的前驱节点指向老节点,后继节点

2020-07-29 15:27:16 171

空空如也

空空如也

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

TA关注的人

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