240 发简信
IP属地:广东
  • clang-format最全配置注释(基于15.0.2)

    一、生成配置(LLVM风格): 二、修改配置(以下为当前这边使用的配置,大家可以基于此模板修改) 强烈大家根据官网options解释进行配置,CLangFormatStyle...

  • 120
    计算汉明权重的SWAR(SIMD within a Register)算法

    前言 今天是教师节,祝老师们节日快乐~ 很久之前,笔者在《布隆过滤器(Bloom Filter)原理及Guava中的具体实现》这篇文章的最后,说到JDK中提供了计算整形数二进...

  • 120
    三角形内随机取点

    假设我们有3个点,分别是A, B, C,如何在这3个点构成的三角形内随机取点呢?下面我们来看看一些常用的实现方式以及他们的优缺点 1. 在AB上随机抽取一个点,命名为D,然后...

  • 提个触目惊心的性能问题:归并排序,实际实现的空间复杂度,并非是On,建议更新,参考代码(c++):
    ```c++
    template <typename T>
    void _Merge(std::vector<T> &arr,
    size_t leftBeg, size_t leftLen,
    size_t rightBeg, size_t rightLen,
    std::vector<T> &tempArr)
    {
    for (size_t idx = 0, leftIdx = leftBeg, rightIdx = rightBeg; idx < leftLen + rightLen; ++idx)
    {
    if (leftIdx >= leftBeg + leftLen)
    tempArr[idx] = arr[rightIdx++];
    else if (rightIdx >= rightBeg + rightLen)
    tempArr[idx] = arr[leftIdx++];
    else if (arr[leftIdx] < arr[rightIdx])
    tempArr[idx] = arr[leftIdx++];
    else
    tempArr[idx] = arr[rightIdx++];
    }

    std::copy(tempArr.begin(), tempArr.begin() + leftLen, arr.begin() + leftBeg);
    std::copy(tempArr.begin() + leftLen, tempArr.begin() + leftLen + rightLen, arr.begin() + rightBeg);
    }

    template <typename T>
    void _MergeSort(std::vector<T> &arr, size_t beg, size_t len, std::vector<T> &tempArr)
    {
    if (len < 2)
    return;

    size_t halfLen = len / 2;
    _MergeSort(arr, beg, halfLen, tempArr);
    _MergeSort(arr, beg + halfLen, len - halfLen, tempArr);
    _Merge(arr, beg, halfLen, beg + halfLen, len - halfLen, tempArr);
    }

    template <typename T>
    void MergeSort(std::vector<T> &arr)
    {
    if (arr.size() < 2)
    return;

    std::vector<T> tempArr;
    tempArr.resize(arr.size());
    _MergeSort(arr, 0, arr.size(), tempArr);
    }
    ```

    数据结构与算法系列--十大排序(附动态图解)

    本文转自公众号 「程序员私房菜 」 一直有写一篇关于排序算法文章的打算,直到我看到了这一篇,我放弃了自己写的打算,因为这篇写的太经典了。这里强烈推荐给大家。 之前的一篇 几张...

  • 另外,所有的array.length == 0的判断,也是不对的哈,只有array.length >= 2时比较才具备进行sort的必要(即进行对应的sort algo),所以需要调整成if (array.length < 2) return;

    数据结构与算法系列--十大排序(附动态图解)

    本文转自公众号 「程序员私房菜 」 一直有写一篇关于排序算法文章的打算,直到我看到了这一篇,我放弃了自己写的打算,因为这篇写的太经典了。这里强烈推荐给大家。 之前的一篇 几张...

  • 感谢分享。
    看了下冒泡,是否第一层的for(i)循环是不需要进行n次的哈,应该是n-1次,其他估计也有此问题

    数据结构与算法系列--十大排序(附动态图解)

    本文转自公众号 「程序员私房菜 」 一直有写一篇关于排序算法文章的打算,直到我看到了这一篇,我放弃了自己写的打算,因为这篇写的太经典了。这里强烈推荐给大家。 之前的一篇 几张...

  • 120
    testFlight使用,以及如何点击链接参与内测

    1.内部测试与外部测试的区别 如图所示,苹果介绍的很清楚了,内部测试只能添加25名成员不需要beta审核,外部测试能添加10000名成员需要beta审核 2.内部测试 登录a...

  • 120
    提交 App 过程中的套装 ID 以及 SKU

    在iTunes Connect 中 【新建 App】 设置 App信息的步骤流程一般是这样的: 1. 名称:指的是App上架后,显示在App Store中的名称。 2. 主要...

  • 非常不错,感谢

    markdownpad2

    生成目录 方式一: 把这一段代码插入到markdown生成的HTML文件的head标签中,将会自动根据markdown的标题按级别生成导航目录 效果图

  • 120
    markdownpad2

    生成目录 方式一: 把这一段代码插入到markdown生成的HTML文件的head标签中,将会自动根据markdown的标题按级别生成导航目录 效果图

  • 120
    关于HTTP1.1的Transfer-Encoding:chunked

    起因 以前一个小项目的后台接口是某PHP的哥们写的,然后可能他不知道从哪里看了一篇毒鸡汤,说什么大神的成长之路,都是要对以前的代码不停的重构,要追求完美,然后认真勤奋的把代码...

  • 120
    手把手教你实现iOS 远程推送

    当我们的手机在关闭状态下仍然能收到各种通知,那是我们下载安装的App主动提示到来的新信息,下面是我手机通知中心的部分截图: 众说周知,iOS远程推送通过APNs实现。APNs...

  • 120
    IAP (In-App purchase)

    哪些可以作为IAP商品 虚拟物品 App某些功能 服务 IAP产品种类 Non-consumable products同一个AppleID 只能购买一次,再次购买会提示"已购...

  • 可以可以,多谢啦

    Android 的几款模拟器比较

    先来科普下关于安卓系统的几个基本知识。 安卓系统目前支持哪些CPU架构 Android系统目前支持以下七种不同的CPU架构: ARMv5 ARMv7 (从2010年起) x8...

  • 120
    Android 的几款模拟器比较

    先来科普下关于安卓系统的几个基本知识。 安卓系统目前支持哪些CPU架构 Android系统目前支持以下七种不同的CPU架构: ARMv5 ARMv7 (从2010年起) x8...

个人介绍
醉过知酒浓,爱过知情重。