AI工具人
提示词工程师

编程

为什么说过早优化是万恶之源?-XINDOO

为什么说过早优化是万恶之源?

  Donald Knuth(高德纳)是一位计算机科学界的著名学者和计算机程序设计的先驱之一。他被誉为计算机科学的“圣经”《计算机程序设计艺术》的作者,提出了著名的“大O符号”来描述算法的时间复杂度和空间复杂度,开发了T...

赞(0)xindooxindoo阅读(341)去评论
面试题精选:单链表排序也能玩出花来-XINDOO

面试题精选:单链表排序也能玩出花来

今天国庆节,祝大家中秋节快乐,顺便给大家拜个早年[狗头]。不过最近还在准备面试的同学们不要浪太狠,还是要好好学习的鸭。 单链表的排序在数据结构类的面试题中简直是集大成者,什么排序、链表、链表删除、添加…… 都能体现在单链表排序上,也非常考验...

赞(0)xindooxindoo阅读(3094)去评论
Java中synchronized与ReentrantLock性能对比-XINDOO

Java中synchronized与ReentrantLock性能对比

前两天逛博客的时候看到有个人写了一篇博客说ReentrantLock比synchronized慢,这就很违反我的认知了,详细看了他的博客和测试代码,发现了他测试的不严谨,并在评论中友好地指出了他的问题,结果他直接把博客给删了 删了 了…… ...

赞(0)xindooxindoo阅读(3411)去评论
Antlr实战之JSON解析器slowjson-XINDOO

Antlr实战之JSON解析器slowjson

最近一直在学习编译原理,然后就了解到了antlr4这个强大的工具,antlr的全称是(Another Tool for Language Recognition),是一款很强大的词法和语法分析工具,虽然是用java写成的,但它也能生成c++...

赞(0)xindooxindoo阅读(4796)去评论
微信朋友圈自动点赞-XINDOO

微信朋友圈自动点赞

  我一直都不太喜欢给别人点赞,某一年(貌似是17年)微信出了一次朋友圈年报,那一整年我就点出去了几个赞,要知道当时我微信好友应该有300+。我觉得这是我不喜欢参与社交活动在网络世界的一种体现吧。不给别人点赞也没啥坏处,但你不评不赞,难免会...

赞(2)xindooxindoo阅读(6187)去评论
Java HashMap源码浅析-XINDOO

Java HashMap源码浅析

  之前虽然很频繁使用java的hashmap,但一直都是纯用,至于里面怎么实现的,一直都是糊里糊涂的。今年4月份跳槽找工作,大概看了一下HashMap的源码,在面试过程中也被多位面试官问到HashMap的相关问题,有些问题也没回答出来。本...

赞(1)xindooxindoo阅读(5121)去评论
java.util.Random和concurrent.ThreadLocalRandom对比-XINDOO

java.util.Random和concurrent.ThreadLocalRandom对比

  最近工作中遇到了一个需求,需要以一定的概率过滤掉一部分的流量,想想只能用Random了,因为是在多线程环境下,我还特意确认了下Random在多线程是否能正常运行,Random的实现也比较简单,初始化的时候用当前的事件来初始化一个随机数种...

赞(0)xindooxindoo阅读(6925)去评论
一道有趣的面试题-XINDOO

一道有趣的面试题

  前两天在刷leetcode的时候,遇到了一题Implement Rand10() Using Rand7(),rand7()可以给你等概率返回1-7的任意一个数,让你用rand7()实现一个rand10(),rand()可以等概率返回1...

赞(0)xindooxindoo阅读(5741)去评论

Leetcode contests 93 题解

868. Binary Gap   简单题,就是求一个数字二进制形式中两个1的最大间隔位置,比如22的二进制0b10110,最大距离就是2,0b100001,最大距离是5。 ~谢谢打赏~ 赏

赞(0)xindooxindoo阅读(5507)去评论

Java生产者消费者的三种实现

  Java生产者消费者是最基础的线程同步问题,java岗面试中还是很容易遇到的,之前没写过多线程的代码,面试中被问到很尬啊,面完回来恶补下。在网上查到大概有5种生产者消费者的写法,分别如下。 用synchronized对存储加锁,然后用o...

赞(0)xindooxindoo阅读(6413)评论(2)

Java线程间同步(诡异的IllegalMonitorStateException )

  前两天去面试,被问到了一个线程同步的问题,两个线程依次输出1……100,一个线程只输出奇数,一个只输出偶数。之前工作中没写过线程同步的代码,只知道使用object的wait()和notify()方法可以实现线程同步,之前也看过线程池实现...

赞(0)xindooxindoo阅读(4929)去评论

Leetcode 19.Remove Nth Node From End of List

题目链接:19. Remove Nth Node From End of List   删除单链表中的倒数第n个节点,链表中删除节点很简单,但这道题你得先知道要删除哪个节点。在我的解法中,我先采用计数的方式来确定删除第几个节点。另外我在头节...

赞(0)xindooxindoo阅读(5103)去评论

Leetcode 6. ZigZag Conversion

原题链接:6.ZigZag Conversion   题目名称『曲折变换』,但给的样例只有三行,看不出到底怎么样曲折变化,所以这里我再补充一个样例,大家肯定一下就懂了。 ~谢谢打赏~ 赏

赞(0)xindooxindoo阅读(5072)去评论

记一次mysql线上问题排查

  背景是这样的,我们有个系统每天都会调起多个定时任务,首先quartz每分钟会调起一次检查时间的任务,如果发现时间到达设定的任务执行时间,java代码会向数据库里写入一条记录,然后有另外一个系统就会根据这条记录执行相应的任务,有天有同事反...

赞(0)xindooxindoo阅读(6373)去评论

Leetcode 582. Kill Process

Leetcode 582. Kill Process   好久没刷题,今天来一道比较简单的题目,如果此题作为一道面试题,可以延伸出树的遍历,栈和队列,hashmap,treemap等,还是比较能考验基础的面试题。 ~谢谢打赏~ 赏

赞(0)xindooxindoo阅读(5573)去评论

python爬虫爬取链家二手房信息

  一种有想做个爬虫的想法,正好上个月有足够的时间和精力就学了下scrapy,一个python开源爬虫框架。好多事开始以为很难,但真正下定决心去做的时候,才发现非常简单,scrapy我从0基础到写出第一个可用的爬虫只用了两天时间,从官网实例...

赞(1)xindooxindoo阅读(6347)去评论

Java线程的使用方法

  大学的时候就顾着搞acm了,没写过工程,尤其是多系统协作的工程。工作中遇到一种场景,我自己代码需要多次调用别的系统api,http的接口rt在几十毫秒左右,我必须在几百毫秒内完成上百次的查询,串行的单线程代码不可能完,所以不可避免需要使...

赞(0)xindooxindoo阅读(4938)去评论

Leetcode 114. Flatten Binary Tree to Linked List

Leetcode 114. Flatten Binary Tree to Linked List   题目意思很简单,就是把一棵二叉数转换为链表,虽然题目中没说以什么样的形式转换,但看下样例就很容易看出来,是以先序遍历的次序转换成链表。这里...

赞(0)xindooxindoo阅读(5060)去评论

树莓派从温湿度传感器DHT11读取数据

  树莓派作为一个完整的主机,除了能在上面跑系统外,也提供了40个引脚提供电路开发的功能。本来我在工作中常接触linux,但没啥机会接触硬件,正好手头上有一台raspberry 3b,本来是用来学linux相关的包的,闲的没事,网上买了几个...

赞(0)xindooxindoo阅读(6320)去评论

萌妹子Python入门指北(五)

  这次我们来谈谈python中的函数,首先说一点,这里的函数和数学中的函数完全没有任何关系。在数学中,函数可能代表这一个数学公式,哎呀! 想想就头疼,但在程序猿的世界,函数就是实现某个功能的一段代码,比起for循环、if判断来说好理解多了...

赞(0)xindooxindoo阅读(4682)去评论

Leetcode 198. House Robber

原题链接:198. House Robber   一句话理解题意,有个偷马贼晚上要偷尽可能值钱的马,但连续两头马被偷会触发报警,问他如何在不触发报警(不偷连续的两匹马)的情况下偷到总价值最高马,返回最高总价值。   看到maximu...

赞(0)xindooxindoo阅读(5058)去评论

Leetcode 347.Top K Frequent Elements

Top K Frequent Elements   一句话理解题意:输出数组中出现次数对多的k个数。   在如果用C语言来写这个题目,思路就是先按数的大小排序,然后再用一个结构体数组保存每个数的出现次次数。 因为数组已经有序了,所以只需要遍...

赞(0)xindooxindoo阅读(5130)评论(1)

萌妹子Python入门指北(四)

  这个系列其实是想给非计算机专业的人一个python的入门指导,已经写了3篇,这篇拖了好久了。我开始觉得学编程真的很难,计算机有些方面的知识真是常人所不能理解的,仅仅靠这几篇文章肯定是做不到入门的,如果各位真想学python,还是希望各位...

赞(0)xindooxindoo阅读(4750)去评论

萌妹子Python入门指北(三)

  前两篇网站我简单介绍了python环境的安装和基本的变量及运算。到目前为止,我们没办法用python做任何事,所以这篇文章我会介绍python的判断和循环语句,据说顺序、判断、循环可以解决计算机中的任何问题。 我为什么不介绍顺序呢!因为...

赞(0)xindooxindoo阅读(4771)去评论

萌妹子Python入门指北(二)

  只写了第一篇就好久没更新了,为啥?因为妹子学编程的意愿不强了,我也不能逼迫她去学。不过后来收到部分人的私信说希望继续更新下去,所以紧接上文继续萌妹子Python入门指北(一)。声明:本系列是为非计算机专业人士写的,单篇文章内容会偏少、也...

赞(0)xindooxindoo阅读(5033)评论(1)

ubuntu下搭建wordpress站点

  之前使用的是阿里云的php虚拟空间,可以只需要把wordpress包上传后就可以了,但感觉这样不灵活,虚拟空间也只能用来搭博客,不能干其他事。 所以我买了阿里云的ecs,其实就是一个远程linux虚机主机。 为了搭建博客,我必须安装配置...

赞(0)xindooxindoo阅读(6879)评论(8)
Markdown入门-XINDOO

Markdown入门

  用wordpress搭建了一个博客,但发现博客自带的编辑器特别难用,后来在网上发现了wordpress markdown编辑器,所以打算改用markdonw编写文章。markdown是一种轻量级的标记语言你可以把他看做html,但预发格...

赞(0)xindooxindoo阅读(5136)去评论

Leetcode Single Number II (面试题推荐)

    还记得《剑指offer》和《编程之美》等书上多次出现的找一个数组中只出现一次的数那个题吗?     leetcode也有这道题 链接here  相信大家都知道用异或在O(n)的时间复杂度内求出的方...

赞(0)xindooxindoo阅读(4979)去评论