牛客图书馆 > 读书笔记
  • 二进制中1的个数

    请实现一个函数,输入一个整数,输出该属二进制表示中1的个数。例:9的二进制为1001,输出2. 方法一: 把这个数转化为二进制,用该数最小位和1做&运算判断最小位是否为1,每判断一次,将该数往右移一位,或将1网左移一位。代码如下: ...
    熊琪琪(19级大数据方向) 编辑于 2021-03-13 21:39:12
  • 求解字符串中的回文序列

    1.概念:回文序列,是指一个字符串中存在一组连续的子串,从前往后和从后往前式一样的。形容526412332189中的123321就是回文序列2.如何求解字符串中的回文序列呢?这里介绍三种方法。1)暴力求解法对于字符串开始遍历,定义两个指标i和j分别从i=0,j...
    牛气冲天1234 编辑于 2020-08-04 15:38:38
  • 题解 | #替换空格#

    分割字符串,重新拼接字符串 class Solution: def replaceSpace(self , s ): # write code here new_str = "" st...
    牛客722691473号 编辑于 2021-08-22 16:10:58
  • 算法-动态规划

    动态规划算法介绍1.动态规划(Dynamic Programming)算法核心思想:大问题划分为小问题进行解决,从而一步步获取最优解的处理算法。2.适用于动态规划求解的问题,经分解得到子问题往往不是相互独立的,即下一阶段的求解建立在上一个子阶段的基础上。3.动...
    我是一只羊 编辑于 2021-03-07 16:59:55
  • 十大排序算法

    1、冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素...
    丶Neil 编辑于 2021-03-19 09:45:38
  • 【2.5堆结构和堆排序详解】

    堆:heapinsert()方法:popMax()&heapify()方法: heapSort()方法 # arr[0...index-1]已经是大根堆了,某个数现在在index位置,往上继续移动 # heapInsert()作用:使arr[0.....
    智慧的屁 编辑于 2021-01-19 21:01:19
  • bp学习

    bp学习笔记:一:bp使用场合:1、计数问题(有多少种方式走到右下角,有多少方法选出K个数使得和为SUM)2、求最大最小值 (路径最大最小数字和),最长子序列3、存在性问题。二:bp组成:1、确定状态:需要开一个数组,数组每个元素[i]或者[i][j]代表一个...
    helloxiaoxiao 编辑于 2020-08-30 17:45:58
  • 动态规划

    include <bits/stdc++.h> using namespace std; int main(){ int N,ret=0; cin>>N; vector<int> ans(N); ve...
    瓜瓜请多指教 编辑于 2020-07-17 17:29:11
  • 常用算法(一)

    排序大的分类可以分为两种:内排序和外排序。 在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。 内排序有可以分为以下几类: (1)、插入排序:直接插入排序、二分法插入排序、希尔排序...
    白驹之过隙 编辑于 2019-09-29 12:35:21
  • 排序

    排序还是最基础的。 链表的排序总共知道三种,插入、快排、归并。。经过分析之后惊奇的发现链表的快排是稳定的🤣 快排的思想,partition的时候分为三种情况,左 中 右 三段新链表。新数据小于base,接在左边的后面,大于base,接在右边的后边...
    LitterF 编辑于 2019-10-18 23:36:47