[LeetCode C++实现]101. Symmetric Tree

好久没刷题今天有时间挑选了这道Symmetric Tree(对称二叉树)。

按照最直观的思路层序遍历,然后判断每一层是否对称。

/**

* Definition for a binary tree node.

* struct TreeNode {

* int val;

* TreeNode *left;

* TreeNode *right;

* TreeNode() : val(0), left(nullptr), right(nullptr) {}

* TreeNode(int x) : val(x), left(nullptr), righ......

日常开发笔记总结(十一)

git命令使用

新工作中由于是在linux环境上写代码,因此原来使用小乌龟提交代码的方式不再适用,因此利用空余时间学习git命令行的使用。

命令行向github推送代码,先在github上创建了仓库:

echo "#hello,world" >> README.md

git init

git add README.md

git commit -m "first commit"

git branch -M main

git remote add origin git@github.com:52coder/hello-world.git

git push -u origin ......

google benchmark学习与使用

google benchmark

#include <benchmark/benchmark.h>

#include <array>

constexpr int len = 6;

// constexpr function具有inline属性,你应该把它放在头文件中

constexpr auto my_pow(const int i)

{

return i * i;

}

// 使用operator[]读取元素,依次存入1-6的平方

static void bench_array_operator(benchmark::State& state)

{

......

C++11多线程例子

// CPP program to demonstrate multithreading

// using three different callables.

#include <iostream>

#include <thread>

using namespace std;

// A dummy function

void foo(int Z)

{

for (int i = 0; i < Z; i++) {

cout << "Thread using function"

" pointer as callable\n";

}

}

// A ca......

grpc入门教程

周五在家折腾了下grpc,在13年的一个笔记本上编译居然用了8个小时,内存swap用了15G,简直了。

This guide gets you started with gRPC in C++ with a simple working example.

Introduction to gRPC

A basic tutorial introduction to gRPC in C++.

gRPC Crash Course - Modes, Examples, Pros & Cons and more

[LeetCode C++实现]45. 跳跃游戏 II

[LeetCode C++实现]45. 跳跃游戏 II

date:2021-07-12 23:30

url:LeetCode45

class Solution {

public:

int jump(vector<int>& nums) {

int size = nums.size();

int right = 0,step = 0,end = 0;

for(int i = 0;i < size - 1;i++)

{

if(i <= right)

{

right = max(right,i + nums[i]);

if(i == end)

{

end =......

[LeetCode C++实现]55.跳跃游戏

class Solution {

public:

bool canJump(vector<int>& nums) {

int size = nums.size();

int right = 0;

for(int i = 0;i < size;i++)

{

if(i <= right)

{

right = max(right,i + nums[i]);

if(right >= size - 1)

return true;

}else

return false;

}

return false;

}

};

这道题的思路是贪心,从前往后计算能够到达的最远距......

[LeetCode C++实现]179. Largest Number

讨论区看到一个解法,非常的清晰,缺点是需要构造一个vector,因此空间复杂度较高。

class Solution {

public:

string largestNumber(vector<int>& nums) {

vector<string> strs;

for(auto num:nums)

strs.push_back(to_string(num));

sort(strs.begin(),strs.end(),[](const string& s1,const string& s2){return s1 + s2 > s2 +......

Linux添加swap分区,解决内存不足

周末在家打算安装学习下grpc,发现安装到一半oom内存不足,于是有了这篇文章.

Swap 是 Linux 下的交换分区,类似 Windows 的虚拟内存,当物理内存不足时,系统可把一些内存中不常用到的程序放入 Swap,解决物理内存不足的情况。但是如果开始使用 SWAP 的时候系统通常都会变得十分缓慢,因为硬盘 IO 占用的十分厉害,除非是 SSD 的情况下,速度才有可能稍微快一点。

下面是创建使用 SWAP 的方法:

一、创建文件

dd if=/dev/zero of=/swapfile bs=1024 count=8096000

SSH 执行以上命令,创建一个名为 sw......

IDEA快捷键

clion常用快捷键:

command + [ 回退

command + ] 前进

command + O 查找class

shift command + O 查找文件

option command + O 查找符号