var arr=[12,83,27,65,45,32,27,11,4]; var k; for(i=0;i<arr.length-1;i++){ for(j=0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ k=arr[j]; arr[j]=arr[j+1] ...
分类:
编程语言 时间:
2020-07-08 20:00:42
阅读次数:
71
#golang 几种字符串的连接方式 最近在做性能优化,有个函数里面的耗时特别长,看里面的操作大多是一些字符串拼接的操作,而字符串拼接在 golang 里面其实有很多种实现。 实现方法 1. 直接使用运算符 func BenchmarkAddStringWithOperator(b *testing ...
分类:
其他好文 时间:
2020-07-08 16:59:31
阅读次数:
75
摘要:上次我们学习了 Golang 的 goroutine 调度策略,今天我们来学习 Golang 的内存管理策略。 思考内存管理如何设计 内存池 最直接的方式是调用 malloc函数,指定要分配的大小,直接向操作系统申请。问题是这种方式会涉及到用户态和内核态的切换过程,那么频繁的切换就会带来很大的 ...
分类:
其他好文 时间:
2020-07-08 12:58:36
阅读次数:
58
冒泡排序 4.1 基本介绍 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。 因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换 ...
分类:
编程语言 时间:
2020-07-07 23:42:15
阅读次数:
89
用两个for来实现 两个for的作用 :单拎出来一个,与未排序的数字比较去掉,如果后面的值小于本身,则互换 例如:1 3 2 拎出来 2 与前面的数字比较,碰到 3 了 3赋值给临时变量temp; 2放到3的位置上去,temp放到原来2的位置上去 import java.util.Arrays; p ...
分类:
编程语言 时间:
2020-07-07 22:13:45
阅读次数:
61
简单排序 简单排序,其实就是冒泡排序的一种别称,其工作原理就是:一个有n个元素的列表,经过n-1轮的排序后就是一个有序的列表,每轮选出该轮中最大/小的数填充到新的列表中,因为前n-1个已经排好序,自然而然最后一个已经好了。就好像10个高矮不一的人要排成从矮到低的列,我们就可以,第一次选出最矮的站在新 ...
分类:
编程语言 时间:
2020-07-07 19:47:17
阅读次数:
52
排序规则: 比较相邻的元素。如果第一个比第二个大,就交换它们两个。 对每对相邻元素做同样的工作,从开始第一对到最后一对。这步做完之后,最后的元素会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要进行比较。 时间复杂度:O(n ...
分类:
编程语言 时间:
2020-07-07 19:32:35
阅读次数:
60
{ "coord": { "lon": -0.13, "lat": 51.51 }, "weather": [ { "id": 300, "main": "Drizzle", "description": "light intensity drizzle", "icon": "09d" } ], " ...
分类:
Web程序 时间:
2020-07-07 13:16:02
阅读次数:
101
原理:拿自己与上面一个比较,如果上面一个比自己小就将自己和上面一个调换位置,依次再与上面一个比较,第一轮结束后最上面那个一定是最大的数 #! /usr/bin/env pythonf # -*- coding: utf-8 -*- def bubble_sort(li): for i in rang ...
分类:
编程语言 时间:
2020-07-07 13:05:23
阅读次数:
165
知识点:动态规划、单调栈 LeetCode第八十五题:https://leetcode-cn.com/problems/maximal-rectangle/submissions/ 有些题目是真的难,比如这题,答案都不一定抄的明白。 语言:GoLang // 结合LeetCode 84题,逐行计算。 ...
分类:
其他好文 时间:
2020-07-07 13:03:19
阅读次数:
61