pandas 【Python】Pandas Dataframe转json pandas是python里一个高效的数据处理库,在web开发中,有时候需要读取本地数据返回给前端,返回给前端的一般是json数据。pandas通过函数 to_json()直接json转化的能力。 下面是函数说明: DataFrame.to_json( path_or_buf=None, orient=None, date_format='epoch', double_precision=10, force_ascii=True, date_unit='ms', default_handler=None,
leetcode 【LeetCode】104. Maximum Depth of Binary Tree 问题描述 Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node. 求树的深度 代码
leetcode 【LeetCode】102. Binary Tree Level Order Traversal 问题描述 Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree [3,9,20,null,null,15,
leetcode 【LeetCode】101. Symmetric Tree 问题描述 Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For example, this binary tree [1,2,2,3,4,4,3] is symmetric: 1
算法 【编程之美】中国象棋将帅问题 问题描述 在中国象棋里将和帅是不能碰面的,如下图所示,当将位于d10时,帅就不能在d1,、d2、d3。请写一个程序,输出将、帅所有的合法位置。要求在代码中仅用一个变量。 如果只是输出将、帅的合法位置,那这题就比较容易了,只要二重循环判断一下就行,但后面一个条件就将题目的难度上升了好多。 算法分析 因为是判断两个对象A、B的位置符不符合要求,而且每个对象一共就只有9个位置可选,可以比较快地想到程序的大体框架: 1. 遍历A的位置 2. 遍历B的位置 3. 判断A、B的位置组合是否满足要求 4. 如果满足,则输出 因为每个对象只有9个位置,所以循环次数一共也就81次。
C++ 【算法】检测数组里是否有两个数之和等于某个数 问题: 检测数组里是否有两个数之和等于某个数 解决方法一:先将数组排序,然后从两头开始遍历 数组排序后,从左端开始取最小值,从右端取最大值, 判断两者之和与目标的大小: 1. 等于时,输出两个数; 2. 大于时,右端移到第2个数,继续判断; 3. 小于时,左端移到第2个数,继续判断。 #include #include #include using namespace std; void fun1(int a[], int length, int
C++ 【算法】十进制字符串转十六进制字符串 问题描述 将一个十进制字符串转化为十六进制字符串。 问题解决 这个问题如果只是十进制转化为十六进制,其实是比较容易的,只要了解短除法就可以解决了,但题目里数是字符串,这就将题目的难度增高了。因为如果只是int型,那最多也就支持个10位数;但字符串却可以上千位,所以我们使用短除法的时候会比较麻烦。 这里我先将字符串转成了int型,先把简单的10位数的实现出来,来理顺一下思路。下面是10进制数转16进制的代码: int main(){ string s; while (cin >> s){ int n = 0; // 将字符串转换为int类型 for (int i = s.length() -
C++ 【ACM】K尾相等数 问题描述: 从键盘输入一个自然数K(K>1),若存在自然数M和N(M>N),使得K^M 和K^N均大于或等于1000,且它们的末尾三位数相等,则称M和N是一对"K尾相等数"。请编写程序,输出M+N最小的K尾相等数。 样例: 输入输出2120问题分析: 末尾三位数只有1000个,从1到无穷大增大幂次时,肯定会出现同样的末尾三位数,比如n=10时(`n^M`大于1000时才有末尾三位数),幂次M12345n^M 10100100010000100000末尾三位数无无000所以当幂次为3时出现了第一个三位数,当幂次为4时出现了第二个三位数,N = 3,
C++ 【算法】烙饼排序 问题描述: 把一摞大小不一的烙饼按顺序排好,大的在下面,小的在上面, 要求只能用一只手去翻转烙饼位置,另一只手要端盘子; 输出最优化的排序过程。 -------------------------------------------------------------------------------- 示例: 3 1 2 翻转 1 , 当前烙饼排序 3 2 1 成功! -------------------------------------------------------------------------------- 算法描述: 问题解析:一个未排序的数列,如 a,b,c,d,~z 每一次选取其中一个数,将它与最后一个数之间的 所有数(包含它们两个)
leetcode 【LeetCode】100. Same Tree 问题描述 Given two binary trees, write a function to check if they are equal or not. Two binary trees are considered equal if they are structurally identical and the nodes have the same
leetcode 【LeetCode】88. Merge Sorted Array 问题描述 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: You may assume that nums1 has enough space (size that is greater or equal to
leetcode 【LeetCode】83. Remove Duplicates from Sorted List 问题描述 Given a sorted linked list, delete all duplicates such that each element appear only once. For example, Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->
leetcode 【LeetCode】70. Climbing Stairs 问题描述 You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you
leetcode 【LeetCode】67. Add Binary 问题描述 Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "1" Return "100". 二进制加法 代码 class Solution { public: string addBinary(string a, string b) { int cur=
leetcode 【LeetCode】66. Plus One 问题描述 Given a non-negative number represented as an array of digits, plus one to the number. The digits are stored such that the most significant digit is at the head of the list.
python Python Flask静态目录 在创建了Flask项目之后,如果不想用到模板引擎,想做前后端分离的项目时,就需要用到静态目录了。Flask的静态目录规定是static,也就是说所有的静态文件需要放到static文件夹下才能访问到。如下目录: - app.py - static - index.html 要访问index.html,需要通过Url:http://localhost:5000/static/index.html 也就是说要加上static路径进行访问。但这样又很不方便,因为要加static的话,访问html的url就显得有些“丑”了。这个时候,可以使用参数 static_
leetcode 58. Length of Last Word 问题描述 Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string. If the last word does not exist, return
leetcode 38. Count and Say 问题描述 The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 111221, ... 1 is read off as "one 1" or 11. 11 is read off as "two 1s"
leetcode 36. Valid Sudoku 问题描述 Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules [http://sudoku.com.au/TheRules.aspx]. The Sudoku board could be partially filled, where empty cells are filled with
Android 【Android进阶篇】Fragment的两种加载方式 一、概述 Fragment(碎片,片段)是在Android 3.0 后才引入的,主要的目的是为了实现在大屏幕设备上的更加动态更加灵活的UI设计。这是因为平板电脑的屏幕比手机大得多,所以屏幕上可以放更多的组件,而不是简单地只是把手机上的组件放大。所以 Fragment在应用中的是一个可重用的模块化组件,它有自己的布局、自己的生命周期,在一个Activity中可以包含多个Fragment。 二、在Activity中加载Fragment Fragment的加载方式包含两种:静态加载和动态加载。静态加载很简单,我们只需要把Fragment(片段)当成普通UI控件放到界面Layout 中就行;动态加载稍微复杂一点,需要用到事务。 三、静态加载 在Activity中静态加载Fragment的过程分为三步: 1.
leetcode 【LeetCode】24. Swap Nodes in Pairs 问题描述 Given a linked list, swap every two adjacent nodes and return its head. For example, Given 1->2->3->4, you should return the list as 2->1->4->3. Your algorithm
leetcode 【LeetCode】27. Remove Element 问题描述 Given an array and a value, remove all instances of that value in place and return the new length. Do not allocate extra space for another array, you must do this in
nodejs 【Node.js基础篇】使用net模块和Readline模块实现Socket通信 Node.js的socket通信和C++、Java的非常相像,学过这两种语言的socket通信的同学可以很快就掌握好Node.js的socket通信。下面我们以实现一个Echo服务器的服务端和客户端为目的,学习一下Node.js的socket通信。 > 所谓的Echo服务器指的是这样一种服务器:客户端发送一条消息给服务端,服务端就把这条消息原封不动地返回给客户端。 -------------------------------------------------------------------------------- 服务端 服务端的实现分为三步: * 通过createServer创建一个server服务端 * 使用server的listen方法监听指定端口,等待客户端接入 * 通过socket对象来监听data、close等事件,用以完成与客户端的交互 下面是服务端代码: /** * Created by Administrator on 2015/9/8. */ var net = require('net'); // 服务器IP
python Python获取多少小时之前的时间并格式化 原理: 使用time.time()获取当前时间的秒数,然后减去hours的秒数,从而得到一个时间,接下来使用time.localtime(t) 本地化创建一个时间对象,最后使用strftime格式化时间,代码如下: def beforeHours2Date(hours, date_format='%Y-%m-%d %H:%M:%S'): hours = int(hours) t = time.time() - hours*60*
C++ 【Cocos2d-X】TableView的使用 在Cocos2d-x使用TableView的过程如下: * 首先用一个类继承CCTableViewDelegate(代理)和CCTableViewDataSource(数据源); * 然后实现里面的有关tableView操作和内容的四个抽象方法; * 最后就可以在场景类中通过CCTableView来使用这个类,CCTableView会分别设置代理对象和数据源对象 示例: TableView.h #ifndef _TABELVIEW_H_ #define _TABLEVIEW_H_ #include "cocos2d.h" #include "cocos-ext.h" using namespace cocos2d; class TableView : public cocos2d::extension::CCTableViewDelegate, public