<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sim0Hayha的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Sim0Hayha</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Sim0Hayha]]></copyright><item><title><![CDATA[webassembly是什么？]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/114047609</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/114047609</guid><author>Sim0Hayha</author><pubDate>Wed, 24 Feb 2021 23:01:52 +0800</pubDate><description><![CDATA[WebAssembly 是一种可以使用非 JavaScript 编程语言编写代码并且能在浏览器上运行的技术方案。

您可能会将WebAssembly当做是另外一种目标汇编语言。这是真的，这些机器语言（x86，ARM等）中的每一种都对应于特定的机器架构。当你的代码运行在用户的机器的web平台上的时候，你不知道你的代码将会运行在那种机器结构上。所以WebAssembly和别的汇编语言是有一些不同的。所以他是一个概念机上的机器语言，不是在一个真正存在的物理机上运行的机器语言。正因如此，WebAssem...]]></description><category></category></item><item><title><![CDATA[gRPC nodejs踩坑]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/104420970</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/104420970</guid><author>Sim0Hayha</author><pubDate>Fri, 21 Feb 2020 00:23:53 +0800</pubDate><description><![CDATA[用nodejs写的gRPC流式服务端，在循环体外部创建了proto消息体，在循环内部set值，并write回客户端，结果客户端收到的每个包内容都相同。

看到这结果，也能猜到个大概了，必定和node的异步机制有关，循环结束后才真正调用之前的write函数，导致每次发送的都是最终的proto消息。

想起node闭包的一个禁忌：不要在闭包中使用外部的循环变量或后续会发生变化的变量
...]]></description><category></category></item><item><title><![CDATA[Java类转fastjson字符串踩坑笔记]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/102927073</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/102927073</guid><author>Sim0Hayha</author><pubDate>Wed, 06 Nov 2019 00:25:19 +0800</pubDate><description><![CDATA[今天，在使用fastjson时，发现Java类中的个别属性无法转换为json字符串的字段，如类Student中的studentName会被过滤掉：


public class Student {
    private String studentName;

    public String getName() {
        return studentName;
    }

   ...]]></description><category></category></item><item><title><![CDATA[Java与C++对比学习]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/102650374</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/102650374</guid><author>Sim0Hayha</author><pubDate>Sun, 20 Oct 2019 16:35:26 +0800</pubDate><description><![CDATA[c++ string类的substr()方法中的第二个参数为长度；

Java String类的substring()方法中的第二个参数为不包括的结束位置；

python中的字符串由 [start : end] 获得，两个参数含义和java一致；



java中不能直接修改字符串的值，只能通过其他操作的组合实现。



c++ compare()函数功能比java equals()丰富。
...]]></description><category></category></item><item><title><![CDATA[3Sum【三个数和为0】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/82957077</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/82957077</guid><author>Sim0Hayha</author><pubDate>Sun, 07 Oct 2018 11:53:25 +0800</pubDate><description><![CDATA[PROBLEM:

Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.

Note:

The solution set mus...]]></description><category></category></item><item><title><![CDATA[关于约瑟夫环问题的理解]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/81490653</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/81490653</guid><author>Sim0Hayha</author><pubDate>Tue, 07 Aug 2018 23:57:08 +0800</pubDate><description><![CDATA[有序列：0，1，2，3......，n-1（可以将0~n-1的序列值理解为任意数组下标），每次删除第m个，注意该序列首尾相连，即n-1的下一个为0，问最后剩下的数字是多少？

此问题被称为约瑟夫环问题，可以用枚举找规律解决，但也可以使用动态规划来思考：

1、记1~n-1序列最后剩下的数字为 f(n,m) ，其中n表示有n个数字，m表示每次删除第m个，因为这两个变量就能决定最后剩下的数字，所以以它...]]></description><category></category></item><item><title><![CDATA[进程和线程的区别]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/81155209</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/81155209</guid><author>Sim0Hayha</author><pubDate>Sun, 22 Jul 2018 15:40:07 +0800</pubDate><description><![CDATA[在理解进程和线程概念之前首选要对并发有一定的感性认识，如果服务器同一时间内只能服务于一个客户端，其他客户端都再那里傻等的话，可见其性能的低下估计会被客户骂出翔来，因此并发编程应运而生，并发是网络编程中必须考虑的问题。实现并发的方式有多种：比如多进程、多线程、IO多路复用。

多进程

进程是资源（CPU、内存等）分配的基本单位，它是程序执行时的一个实例。程序运行时系统就会创建一个进程，并为它分配资...]]></description><category></category></item><item><title><![CDATA[Palindrome Number【判断一个数是不是回文】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/79342699</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/79342699</guid><author>Sim0Hayha</author><pubDate>Wed, 11 Jul 2018 22:21:23 +0800</pubDate><description><![CDATA[PROBLEM:Determine whether an integer is a palindrome. Do this without extra space.SOLVE（C++）:class Solution {
public:
    bool isPalindrome(int x) {
        if(x&amp;lt;0||(x%10==0&amp;amp;&amp;amp;x!=0))
       ...]]></description><category></category></item><item><title><![CDATA[10 分钟了解 Actor 模型]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80964813</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80964813</guid><author>Sim0Hayha</author><pubDate>Mon, 09 Jul 2018 08:39:44 +0800</pubDate><description><![CDATA[过去十几年CPU一直遵循着摩尔定律发展，单核频率越来越快，但是最近这几年，摩尔定律已然失效，CPU的工艺制程和发热稳定性之间难以取舍，取而代之的策略则是增加核心数量，目前家用电脑四核已经非常常见，服务器更是达到了32核64线程。为了有效地利用多核CPU，我们在代码层面就应该考虑到并发性。十几年的痛苦开发经历告诉我们，threads并不是获取并发性的好方法，往往会带来难以查找的bug，但是不用害怕，...]]></description><category></category></item><item><title><![CDATA[KMP算法代码]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80919888</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80919888</guid><author>Sim0Hayha</author><pubDate>Wed, 04 Jul 2018 23:05:12 +0800</pubDate><description><![CDATA[本文主要是方便自己查找记忆，先贴代码：#include &amp;lt;string&amp;gt;
#include &amp;lt;vector&amp;gt;
#include &amp;lt;iostream&amp;gt;
using namespace std;

vector&amp;lt;int&amp;gt; GetNextval(string p) {
	// 由模式字符串p返回next数组
	int pLen = p.size();
	v...]]></description><category></category></item><item><title><![CDATA[【 C/C++ & Python】随机数产生]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80867580</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80867580</guid><author>Sim0Hayha</author><pubDate>Sat, 30 Jun 2018 20:24:34 +0800</pubDate><description><![CDATA[C++中有两种方式：第一种方式是使用&amp;lt;cstdlib&amp;gt;中的rand（）函数，这是ANSI C标准，在gcc/g++编译器中也直接可用；第二种方式是使用&amp;lt;random&amp;gt;库文件，下面对这两种方法进行介绍：1、&amp;lt;cstdlib&amp;gt; &amp;amp; rand（）rand() 函数在头文件&amp;lt;cstdlib&amp;gt; 中，产生的随机数为无符号整数，在0~RAND_MAX 之间...]]></description><category></category></item><item><title><![CDATA[Convert BST to Greater Tree【将二叉树转换】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80717189</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80717189</guid><author>Sim0Hayha</author><pubDate>Sun, 17 Jun 2018 10:42:27 +0800</pubDate><description><![CDATA[PROBLEM:Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all keys greater than the original key in BST....]]></description><category></category></item><item><title><![CDATA[【Python】琐碎知识点整理记录]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80708531</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80708531</guid><author>Sim0Hayha</author><pubDate>Fri, 15 Jun 2018 18:09:48 +0800</pubDate><description><![CDATA[1、sorted( )[: :-1] 排序完了直接逆序切片；map(function, list) 将第一个方法作用于后一个数组上的所有元素；python3中map函数直接返回map对象（python2则是返回list）；dict( ) 直接将zip包转换为内置字典类型，dict中的get方法返回key对应的值（如果存在，否则返回定义的值或者none）如下代码：sort=sorted(nums)[...]]></description><category></category></item><item><title><![CDATA[Find Mode in Binary Search Tree【找到BST树中出现最多的元素】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80693595</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80693595</guid><author>Sim0Hayha</author><pubDate>Thu, 14 Jun 2018 15:53:34 +0800</pubDate><description><![CDATA[PROBLEM:

Given a binary search tree (BST) with duplicates, find all the mode(s) (the most frequently occurred element) in the given BST.

Assume a BST is defined as follows:

The left subtree of a no...]]></description><category></category></item><item><title><![CDATA[Next Greater Element I【第一个数组中数字在第二个数组中找次大值】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80686278</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80686278</guid><author>Sim0Hayha</author><pubDate>Wed, 13 Jun 2018 22:47:10 +0800</pubDate><description><![CDATA[PROBLEM:You are given two arrays (without duplicates) nums1 and nums2 where nums1’s elements are subset of nums2. Find all the next greater numbers for nums1's elements in the corresponding places of ...]]></description><category></category></item><item><title><![CDATA[Number Complement【求反码】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80619643</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80619643</guid><author>Sim0Hayha</author><pubDate>Fri, 08 Jun 2018 10:36:58 +0800</pubDate><description><![CDATA[PROBLEM:Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.Note:The given integer is guaranteed to fit within the range of...]]></description><category></category></item><item><title><![CDATA[Repeated Substring Pattern【重复的子字符串【KMP】】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80589231</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80589231</guid><author>Sim0Hayha</author><pubDate>Wed, 06 Jun 2018 00:42:27 +0800</pubDate><description><![CDATA[PROBLEM:Given a non-empty string check if it can be constructed by taking a substring of it and appending multiple copies of the substring together. You may assume the given string consists of lowerca...]]></description><category></category></item><item><title><![CDATA[Find All Numbers Disappeared in an Array【找到数组中未出现的元素】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80453372</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80453372</guid><author>Sim0Hayha</author><pubDate>Fri, 25 May 2018 16:22:51 +0800</pubDate><description><![CDATA[PROBLEM:Given an array of integers where 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and others appear once.Find all the elements of [1, n] inclusive that do not appear in this array....]]></description><category></category></item><item><title><![CDATA[* Path Sum III【任意 起始点—终点 路径和】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80418458</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80418458</guid><author>Sim0Hayha</author><pubDate>Wed, 23 May 2018 13:19:54 +0800</pubDate><description><![CDATA[PROBLEM:You are given a binary tree in which each node contains an integer value.Find the number of paths that sum to a given value.The path does not need to start or end at the root or a leaf, but it...]]></description><category></category></item><item><title><![CDATA[Binary Watch【二进制手表时间转换为普通时间】]]></title><link>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80384303</link><guid>https://blog.youkuaiyun.com/Sim0Hayha/article/details/80384303</guid><author>Sim0Hayha</author><pubDate>Sun, 20 May 2018 18:26:57 +0800</pubDate><description><![CDATA[PROBLEM:A binary watch has 4 LEDs on the top which represent the hours (0-11), and the 6 LEDs on the bottom represent the minutes (0-59).Each LED represents a zero or one, with the least significant b...]]></description><category></category></item></channel></rss>