精华内容
下载资源
问答
  • 思路:首先我们选择从左下角开始搜寻,(为什么不从左上角开始搜寻,左上角向右和向下都递增,那么对于一个点,对于向右和向下会产生一个岔路;如果我们选择从左下脚开始搜寻话,如果大于就向右,如果小于就向下)...

    在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
    思路:首先我们选择从左下角开始搜寻,(为什么不从左上角开始搜寻,左上角向右和向下都是递增,那么对于一个点,对于向右和向下会产生一个岔路;如果我们选择从左下脚开始搜寻的话,如果大于就向右,如果小于就向下)。

    public class Solution {
    
        public boolean Find(int target, int [][] array) {
            int len = array.length-1;
            int i = 0;
            while((len >= 0)&& (i < array[0].length)){
                if(array[len][i] > target){
                    len--;
                }else if(array[len][i] < target){
                    i++;
                }else{
                    return true;
                }
            }
            return false;
        }
    }
    展开全文
  • Orgpoint用于记录元件视图中左上角的坐标 width用于记录元件宽度 height用于记录元件高度  电路图编辑模块 电路图编辑模块又分为两个子模块:鼠标放置元件模块,鼠标连接元件模块 首先工具栏中可以选择...
  • 原理,观察汉字左上、右、左下、右下四个笔形(横、竖、框等),并把它们编码成四位数字;也可以右下角的上方再取一个「附」,编成五位编码。当时我觉得,四号码检法比常用部首检法方便...

    842dfe419379ddbc13e48300de16efea.png

      最近在知乎上看到有人讨论为什么「四角号码」没能成为主流的形码输入法,这勾起了我的回忆。

      我是在九十年代末,从对门爷爷家的一本词典中接触到「四角号码」检字法的。它的原理是,观察汉字左上、右上、左下、右下四个角处的笔形(横、竖、框等),并把它们编码成四位数字;也可以在右下角的上方再取一个「附角」,编成五位编码。在当时我觉得,四角号码检字法比常用的部首检字法方便多了:用部首检字法,需要先很费劲地数出待检字的笔画数,然后再在一大堆笔画数相同的字中找到待检字;而四角号码则可以直接读出编码来。后来就再没见过带四角号码索引的词典了,感觉很遗憾。

      前一阵子在值乎上,有人让我破译一段数字密码。密码是五位一段的,其中还有不少 0。我的第一反应就是四角号码,在线查询了一下发现果然是。但在查询的过程中,我惊奇地发现不少编码对应着很多个汉字,需要根据上下文来确定到底是哪一个。四角号码这种「重码率高」的缺点,是我之前没有意识到的,而它可能恰恰就是制约四角号码从检字法发展为输入法的重要因素。

      为了了解四角号码的重码现象到底有多严重,我用程序做了一个统计。对照组就选用我常用的五笔输入法。

    数据来源

      我用的四角号码码表,是从这个论坛帖子的 3 楼下载的。四角号码有过若干个版本,通过与维基百科上几个例字的对比,我发现它采用的是《四角号码新词典》中的新版本。在统计过程中我发现了一个明显的错码「癯 21221」,我把它纠正为「00115」。

      五笔码表则来自这个网站。五笔同样有若干个版本,我选用的是 86 版。

    统计范围

      上面两份码表所收字数分别为 7180 字和 6765 字,均为简体字,五笔码表收字是四角号码码表收字的子集。五笔码表所收的字中,除去「镕」「珮」两字,剩下的恰好是 GB2312 字库中一级汉字与二级汉字的全体(共 6763 字),所以我就把这 6763 字作为统计范围。

      五笔编码有全码与简码之分。为了减少重码,我仅考虑全码,其长度为 3~4 个字母。同样,对于四角号码,我也仅考虑长度为 5 个数字的全码。

      五笔码表中包含和单字编码和词组编码,我仅考虑单字。

    统计结果

      先看「对照组」五笔的重码情况:

        无重码字:6253个(92.5 %)
         2字重码: 240组
         3字重码:   6组
            afff  葑鞋鞲
            aftj  著蓍鞒
            dnv   万尢尤
            fcu   云去支
            lhng  囗四皿
            tmgt  微徵徽
         4字重码:   3组
            bnh   了凵卩阝
            qgjf  鲁鲣鲤鲥
            ynky  嬴羸蠃赢

      在 GB2312 范围内,五笔的重码率仅为 7.5%;重码最严重的情况,也只是四字重码。三、四字重码都很罕见,其中「万尢尤」「云去支」「微徵徽」「鲁鲣鲤鲥」「嬴羸蠃赢」这几组,在我日常打字的过程中,早就熟记于心了。

      而四角号码的重码情况是这样的:

        无重码字:2869个(42.4 %)
         2字重码: 732组
         3字重码: 275组
         4字重码:  96组
         5字重码:  69组
         6字重码:  34组
         7字重码:  25组
         8字重码:   5组
            27227 仍侈俑肾角躬鸬鸺
            27627 够邰郇郜鄱鸲鸹鹄
            27720 勾匈岣峋峒幻饲饷
            40227 内南巾布希有肉肴
            47920 杓构枸柳栩桐棚榈
         9字重码:  11组
            00212 充兖庀庇庑庖竞竟鹿
            17127 弱玛琊邛邳邶郅鄄鹉
            17620 司矽砌硐硼碉酌酮醐
            22200 例侧俐倒刎制刿劓爿
            27120 匀约纫纲绚绷绸鲫鲷
            32100 业丬冽洌洲测浏涮渊
            44112 地埴范茈茳荭菹蔬蕴
            44407 孝孽芟芰茇荸莩菱蔓
            47227 帑犸猾胬郁郗郝鹤鹳
            57020 扪抑拘拥掏掬搁搠韧
            80732 会公兹衾铉铱锿镶食
        10字重码:   7组
            00112 疣疮疱疵疽痉痖瘟瘥瘪
            28240 仵做傲儆微徵徼徽攸敫
            44904 某橥茶荣荼菜蓁蕖藁蘖
            57027 扔扬挪捅捣掷揶搦畅邦
            60227 吊呙囫囿圃圊易禺罱胃
            64027 叻呐呦唏唠喃嘞噶嚆瞒
            67027 吗呜哆哪啷嘟嘱眵瞩鸣
        11字重码:   6组
            10227 万丙两丽甭而雨雳需霄鬲
            34127 沩泐洧浠涝淆渤滞满潇潸
            37127 写冯汤泻涌溺滑漏邺闯鸿
            44127 勤坳垮翥茑荡药莺蒲蓊蓦
            77212 兕兜尼屁甩胞胫脆见阻陉
            87720 钓钔钢钥钧钩铆铜锎锏镧
        12字重码:   4组
            30227 宥宵寓寡帘房扁扃扇甯窝肩
            36100 汨汩泅泗泪洄洇洳涠涸湘溷
            47927 杨杩桶桷梆椰榍榔橘郴鸫鹩
            77227 局屑属肠臀邪阝骨鸦鹏鹘鹛
        13字重码:   3组
            00127 疖疗疠疡疬病痈痛痨痫瘠瘸鸾
            00732 亵哀玄衣衮衰衷袤裒裹褒襄饔
            88227 笏笫第筋筒筛筲简箐箫篇篙篱
        14字重码:   2组
            37120 凋汐沏沟泖洞洵润涧淘湖溯潮澜
            67020 叨叩叼吻响哟唧啁啕嗍嘲昀明晌
        15字重码:   3组
            17227 乃帚弼甬粥胥邴郦鄹鬻鸸鹂鹨鹬鼐
            27220 仞们仰伺佝佣侗倜勿匍向彻徇御豹
            44212 兢芫苊苋苑茺荒荛莞莸菀蔸薨藐麓
        16字重码:   1组
            77220 冂冈卩同周月朋朐用网罔胴胸脚阴陶
        20字重码:   1组
            00227 商市帝席庸廊廓斋方旁离肓育脔腐膏膺裔高鹰
        26字重码:   1组
            44227 带幕棼艿节芬芮芳芴芾苈苘茼荫莆莠莴菁萧葡蒂蒡蒿蓠蔺薷

      有没有被吓到?在 GB2312 范围内,四角号码的重码率竟高达 57.6%,多字重码十分常见,最严重的一组竟有 26 字重码!

    重码分析

      从编码空间大小上来看,五笔编码由三或四个字母组成(字母 z 不用),可以有 25 ^ 3 + 25 ^ 4 = 406250 种编码;而四角号码编码由五位数字组成,可以有 10 ^ 5 = 100000 种编码。五笔的编码空间大小是四角号码的 4 倍。但是,四角号码的编码空间小并不是它重码多的主要原因,因为本文考虑的 6763 字远远占不满 100000 种编码的空间。

      我认为,四角号码重码多的主要原因,在于很多常见的偏旁,要占用两位甚至三位编码,编码效率太低。从上节的统计结果也能看出来,许多组多字重码,都是同一偏旁的字。按偏旁位置分类分析如下:

    • 所有位于汉字左边的偏旁,都要占用左上、左下两个角的编码。例如所有「亻」旁汉字的编码都是 2x2xx,所有「木」旁汉字的编码都是 4x9xx。
    • 所有位于汉字上边的偏旁,都要占用左上、右上两个角的编码。例如所有「艹」头汉字的编码都是 44xxx,所有「宀」头汉字的编码都是 30xxx。
    • 所有位于汉字下边的偏旁,都要占用左下、右下两个角的编码,有的甚至还会占用附角。例如所有「心」字底汉字的编码都是 xx33x,所有「土」字底汉字的编码都是 xx104。
    • 所有位于汉字右边的偏旁,都要占用右上、右下、附角三个角的编码。例如所有「刂」旁汉字的编码都是 x2x00,所有「攵」旁汉字的编码都是 x8x40。

      更有甚者,还有「疒」(001xx)、「辶」(3x30x)这种占用三个主角(即非附角)的偏旁,以及「匚」(7171x)这种把四个主角全都占满的偏旁。好在「囗」部有特殊规则处理,左下、右下、附角按被包围的内部来取,否则「围」「国」等字的编码就全都成了 60000 了。

      还有些时候,仅仅一个笔画就能占用三位编码。比如「27220 仞们仰伺佝佣侗倜勿匍向彻徇御豹」这一组重码,这些字的最右侧一笔都是「横折钩」,然而这一笔就占用了右上、右下、附角三位编码,完全遮盖了汉字内部的形状,可谓「一叶障目,不见森林」。在上文列举的多字重码中,有相当比例的编码是以 20 或 27 结尾的,其中大多数字的最右侧或右下角笔画都是横折钩。

      与此相比,上面列出的偏旁在五笔中都只会占用一位编码(个别其它偏旁,如「犭」,会占用两位),而「横折钩」这个笔画都不一定单独成为字根。这就大大降低了重码率。

    总结

      经过上述分析,我觉得,四角号码作为检字法还是不错的,因为在检字的时候,从几个甚至十几个重码中找到待检字并不算费劲,至少比部首检字法强。但要作为输入法,50% 以上的重码率就会严重影响输入效率了。

      「重码多」还只是四角号码的缺点之一。四角号码还有其它缺点,比如有些字的编码模棱两可,以及没有词组编码规则,这些都制约了四角号码成为输入法。

    展开全文
  • 随后的每一行,开头和最后的数字 1,其他的每个数都它左上方和右上方的数之和,就是说除每行最左侧与最右侧的数字以外,每个数字等于它的左上方与右上方两个数字之和。 分析: 1)键盘录入一个数据:(行数)

    杨辉三角
    要想写出杨辉三角,首先得知道什么是杨辉三角形

    杨辉三角形:二项式系数在三角型中的一种几何排列
    1
    1 1
    1 2 1
    1 3 3 1
    1 4 6 4 1
    1 5 10 10 5 1
    前提:每行端点与结尾的数字为1

    • 在最上面一行的中央写下数字 1
    • 第二行,写下两个 1,和上一行形成三角形
    • 随后的每一行,开头和最后的数字都是 1,其他的每个数都是它左上方和右上方的数之和,就是说除每行最左侧与最右侧的数字以外,每个数字等于它的左上方与右上方两个数字之和。
      分析:
    	1)键盘录入一个数据:(行数)
    	2)定义一个二维数组
    	3)遍历二维数组:
    		3.1)先给任意一行的第一列以及最后一列赋值1
    		3.2)从第三行开始中间的每一个数据等于它左上方的数据与右上方的数据之和
    

    具体实现:

    //键盘录入杨辉三角
    public class YangHuiTriangle {
    	public static void main(String[] args) {
    		//创建键盘录入对象
    		Scanner sc = new Scanner(System.in);
    		// 提示并接收数据
    		System.out.println("请输入一个你想要得到的杨辉三角行数:");
    		int n = sc.nextInt();
    		// 定义一个二维数组
    		int[][] arr = new int[n][n];
    		//遍历二位数组,将任意一行的端点与结尾赋值为1
    		for(int x=0;x<arr.length;x++) {
    			arr[x][0] = 1;
    			arr[x][x] = 1;
    		}
    		//从第三行开始,中间的任意一个数据等于它左上方的数据与右上方的数据之和
    		for(int x=2;x<arr.length;x++) {
    			
    			for(int y=1;y<x-1;y++) {
    				arr[x][y] = arr[x-1][y-1]+arr[x-1][y];
    			}
    		}
    		//遍历二维数组
    		for(int x = 0 ; x < arr.length ; x ++){
    			
    			for(int y = 0 ; y <=x ; y++){
    				System.out.print(arr[x][y] +"\t") ;
    			}
    			System.out.println() ;
    		}
    	}
    }
    
    
    展开全文
  • 软件架构一个SDI框架下多窗口切分界面,左上角的窗口一个 CFormView,用来显示常用按钮;左下角一个CEditView,用来显示帮助信息;右一个CView,用来显示要识别图像;右下角一个CEditView,用来...
  • 给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。 题解 首先,拿到这道题我的第一思路DFS,但是DFS会...

    题意

    给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。

    题解

    首先,拿到这道题我的第一思路是DFS,但是DFS会有很多重复计算,因此可以用备忘录优化,而往往这类问题都可以用动态规划来解决

    那么这个动态规划问题的状态转移方程是什么呢?

    状态很好看出来,就是在矩阵中的位置,看题意从坐上角开始每次只能向右或者向下走,这就是状态转移方程,即每一个矩阵中位置只能从左或者上转移过来

    dp[i][j]表示矩阵第 i 行,第 j 列的最小路径和

    状态转移方程为:dp[i][j] = min(dp[i][j-1], dp[i-1][j]) + matrix[i-1][j-1]

    为了处理边界条件,这里用了一个小技巧,将矩阵向左向上分别扩张了一格,填充为INT_MAX

    代码如下:

    class Solution {
    public:
        /**
         * 
         * @param matrix int整型vector<vector<>> the matrix
         * @return int整型
         */
        int minPathSum(vector<vector<int> >& matrix) {
            int m = matrix.size();
            int n = matrix[0].size();
            int dp[m+1][n+1];
            // base case
            for(int i = 0; i <= m; i++) dp[i][0] = INT_MAX;
            for(int j = 0; j <= n; j++) dp[0][j] = INT_MAX;
            
            for(int i = 1; i <= m; i++)
                for(int j = 1; j <= n; j++){
                    if(i == 1 && j == 1) dp[i][j] = matrix[i-1][j-1];
                    else dp[i][j] = min(dp[i-1][j], dp[i][j-1]) + matrix[i-1][j-1];
                }
            return dp[m][n];
        }
    };
    
    展开全文
  • 1. 选定单元格时,状态栏有... “数字以文本形式存储”则输入数字加前导'变成文本时也会在左上角出现小三角形  【注】:还有一种小三角形出现右上角批注 3. 通过 插入|函数 或 工具栏上的图标给单元格插入函
  • 远程连接不SQLSERVER

    2008-10-27 12:30:47
    如果服务器没有tcp连接的1433端口侦听,则连接不上的。检查方法是在服务器的dos或命令行下面输入 netstat -a -n 或者netstat -an,结果列表里看是否有类似 tcp 127.0.0.1 1433 listening 的项。如果没有,则...
  • DLX算法及应用(三)杀手数独

    千次阅读 2014-02-15 15:32:36
    如图所示(来源:百度百科),杀手数独就是经典数独的基础,又多加了一组限制条件:每一个虚线框称作一个区,要求区内的数字不能重复,且区内数字总和等于该区左上角的数字。 杀手数独起始没有一个数字的,挺...
  • EXCEL表格的左上角那个绿色符号是什么?怎么样可以转换成数值 如果你说的文本是由纯数字组成的,不包含字母和其他字符的话,那么,你要指改为数值可以这样操作:1.先一个单元格内输入数字12.将刚才输入数字的...
  • 每扫到一处地方就可以进行卷积的运算,计算方法很简单,如图所示,左上角的卷积核扫到绿色框的位置,则卷积核矩阵的数字就和扫到的位置的矩阵的数字一一对应相乘然后相加,最后取一个均值,该值就是卷积核提取的特征...
  •  不过题意还是要简单说下,'X'是墙,'.'是路,迷宫标准╮(╯_╰)╭起点是左上角,终点是右下角,数字是在这一点要多费时间,问最短时间走到终点方法。一开始用dfs写没写出来= =好吧,写乱乱最后也没...
  • 这道题和NOIP2000方格取数如出一辙(我写超详细题解此),都给定矩阵,要求从左上角走到最下角(只可向右或向左走)找两条路径,使两条路径上数字的总和最大。但这题有几个变化: 路径不可相交。 矩阵形态...
  • 给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例 输入: [  [1,3,1],  [1,5,1],  [4,2,1] ] 输出: 7 解释:...
  • 答:佳创易人快递单打印软件提供了“校准打印机”功能,只要用户把一张A4纸放入打印机,使用校准功能时会的左上角打印出一个小矩形框,分别量出小矩形框的左上角与纸张左边缘和边缘的距离(单位为毫米),填入...
  • CPCL打印机和编辑器

    2020-01-09 08:50:22
    模板的整体坐标以打印纸的左上角为原点,x轴 左负右正,y轴 负下正!!! 4.写字 TEXT 2 0 10 330 车牌号: TEXT 2 0 100 330 [carNum] 1 2 3 TEXT => 表示为 文本 2 => 字体的字号(和斑马CPCL描述有出入,斑马CPCL内...
  • 如您选择第一象限则角倒斜角,第二象限在左上角倒斜角,第三第四象限左下角和右下角倒斜角。 “基准台与铜公体合并”基准台与铜公体做布尔并运算。“手动合并”要您选择铜公体做合并。 “自动合并”...
  • css入门笔记

    2018-05-15 14:58:57
    4、spread:阴影大小,指定要基础阴影扩充出来大小距离,取值以px为单位数值 5、color:阴影颜色 6、inset:将默认外阴影转为内阴影 第一位 4、轮廓 轮廓指的是边框边框,绘制于边框外线条。 ...
  • 需要引用它的地方,将光标放在插入的地方(例中“如”字的后面),“插入”菜单选“交叉引用”,弹出对话框中引用类型选“书签”,“引用内容”为“书签文字”,选择刚才键入的书签名后点“插入”,Word就将...
  • Habits 一个伟大应用程序,你就像一个板书写日常记事感觉。创建一个或多个习惯,如戒烟,每天读经,慢跑...创建一个习惯。 Habits 可同时跟踪多个习惯与分离器每一个日历。Habits 将显示当前运行,...
  • PT80-NEAT开发指南v1.1

    2014-06-24 18:38:34
    应用程序关闭 .................................................................................................................................... 19 框架窗口 ...........................................

空空如也

空空如也

1 2 3
收藏数 42
精华内容 16
关键字:

在字的左上角上的数字是什么