char

1160:拼写单词

99封情书 提交于 2020-03-17 20:44:38
题目地址: https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters/ 题目描述 给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars。假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。 注意: 每次拼写时,chars 中的每个字母都只能用一次。返回词汇表 words 中你掌握的所有单词的长度之和 题目示例 示例 1: 输入:words = ["cat","bt","hat","tree"], chars = "atach" 输出:6 解释: 可以形成字符串 "cat" 和 "hat",所以答案是 3 + 3 = 6。 示例 2: 输入:words = ["hello","world","leetcode"], chars = "welldonehoneyr" 输出:10 解释: 可以形成字符串 "hello" 和 "world",所以答案是 5 + 5 = 10。 提示: 1 <= words.length <= 1000 1 <= words[i].length, chars.length <= 100 所有字符串中都仅包含小写英文字母 解题思路 通过分析题目可得

String的那些事

青春壹個敷衍的年華 提交于 2020-03-17 20:21:19
目录 String的特点? String的构造方法? String的常用方法? String的特点? 通过查看String类的源码我们得知:String类被final关键字修饰,这即是说明String类的特点就是: 字符串对象一旦被初始化就不会被改变。 注意:此处是字符串对象而不是字符串引用。也即是说: String s = "abc"; // s引用变量指向了值为"abc"的对象 s = "cba"; // s引用变量又指向了值为"cba"的对象,但是上面值为"abc"的对象的值并未改变 那么 String类被final修饰有什么好处 呢?第一个好处是 安全 ,因为final保证不管怎样操作,它的值都是不变的;第二个好处就是 高效 ,因为只有String类是不可变类时,我们才能实现字符串常量池。试想如果String类是可变类,当多个字符串引用变量指向同一个字符串对象时,字符串对象改变后就会引起多个字符串引用变量内容的改变,这显然不符合我们的预期。我们可以通过下面的代码来验证字符串常量池的存在: class Demo { public static void main(String[] args) { String s1 = "abc"; String s2 = "abc"; Demo d1 = new Demo(); Demo d2 = new Demo(); System

统计字符串所有重复字符出现的次数

喜欢而已 提交于 2020-03-17 17:38:39
/****************** 统计字符串所有重复字符出现的次数******************/ /// <summary> /// 统计字符串所有重复字符出现的次数 /// </summary> /// <param name="strd"></param> public void Count_duplicate_character(string strd) { int char_cnt = 1; //计数器 string char_tdm = null; //字符倒换用的容器 //Console.WriteLine("strd:" + strd); // Console.WriteLine("strd长度" + strd.Length); char_tdm = strd[0].ToString();//将首字符放置于容器中 for (int k = 1; k < strd.Length; k++) { if (strd[0] == strd[k] ) { char_cnt = char_cnt + 1; }//计数 } if (char_cnt > 1) { Console.WriteLine(char_tdm + "共出现:" + char_cnt+"次"); //如有重复则删输出结果 char_cnt = 1; }//计数复位 strd = strd

【c语言】蓝桥杯算法提高 P0401

十年热恋 提交于 2020-03-17 15:16:15
问题描述 输入一个无符号整数x,输出x的二进制表示中1的个数. 输入 :   76584 输出 :   7 # include <stdio.h> int main ( int argc , char * argv [ ] ) { unsigned int n ; scanf ( "%d" , & n ) ; int cnt = 0 ; while ( n ) { if ( n & 1 ) //位运算,判断n的二进制位是否为0,n=1为真,非0为假 cnt ++ ; n >>= 1 ; //n的二进制位向右移动一位,判断是否等于1;即n=n>>1 } printf ( "%d\n" , cnt ) ; return 0 ; } 来源: CSDN 作者: 折腾的小飞 链接: https://blog.csdn.net/qq_41666142/article/details/104919183

CF集萃1

早过忘川 提交于 2020-03-17 13:41:22
因为cf上一堆水题,每个单独开一篇博客感觉不太好,就直接放一起好了。 CF1096D Easy Problem 给定字符串,每个位置删除要代价。求最小代价使之不含子序列"hard"。 设f[i][f]表示前i个删到只匹配f位子序列的最小代价。转移看代码吧。O(n) 1 #include <bits/stdc++.h> 2 3 typedef long long LL; 4 const int N = 100010; 5 6 int a[N]; 7 LL f[N][5]; 8 char str[N]; 9 10 int main() { 11 int n; 12 scanf("%d", &n); 13 scanf("%s", str + 1); 14 for(int i = 1; i <= n; i++) scanf("%d", &a[i]); 15 16 int tag = 0; 17 for(int i = 1; i <= n; i++) { 18 if(tag == 0 && str[i] == 'h') tag++; 19 if(tag == 1 && str[i] == 'a') tag++; 20 if(tag == 2 && str[i] == 'r') tag++; 21 if(tag == 3 && str[i] == 'd') tag++; 22 } 23 if

C++string容器详解

懵懂的女人 提交于 2020-03-17 12:38:02
3.1 string容器 3.1.1 string基本概念 本质: string是C++风格的字符串,而string本质上是一个类 string和char * 区别: char * 是一个指针 string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器。 特点: string 类内部封装了很多成员方法 例如:查找find,拷贝copy,删除delete 替换replace,插入insert string管理char*所分配的内存,不用担心复制越界和取值越界等,由类内部进行负责 3.1.2 string构造函数 构造函数原型: string(); //创建一个空的字符串 例如: string str; string(const char* s); //使用字符串s初始化 string(const string& str); //使用一个string对象初始化另一个string对象 string(int n, char c); //使用n个字符c初始化 示例: #include <string> //string构造 void test01() { string s1; //创建空字符串,调用无参构造函数 cout << "str1 = " << s1 << endl; const char* str = "hello world"; string s2

C++ 文件流操作

做~自己de王妃 提交于 2020-03-17 12:27:34
#include<stdio.h> #include <iostream> #include <fstream> using namespace std; int main() { ifstream infile; //以读模式打开文件 infile.open("C:/123.txt"); //打开文件操作 char key_data[100]; //定义一个字符串缓冲区 infile >> key_data; //将读取的文件存放到缓冲区中 infile.close(); //关闭文件 ofstream outfile; //以写模式打开文件 outfile.open("C:/License.ini"); //打开文件 char config_title[100] = "[License]"; char config_date[100] = "Key="; strcat(config_date, key_data); //字符串拼接 outfile << config_title << endl; //写入文件 outfile << config_date; //写入文件 outfile.close(); //关闭文件 return 0; } 来源: https://www.cnblogs.com/shenji/p/12509548.html

使用c实现简单的rpc

无人久伴 提交于 2020-03-17 11:00:59
某厂面试归来,发现自己落伍了!>>> RPC 简介 RPC(Remote Procedure Call)——远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的细节的技术。 通过RPC我们可以充分利用非共享内存的多处理器环境(例如通过局域网连接得多台工作站),这样可以简便地将你的应用分布在多台工作站上,应用程序就像运行在一个多处理器的计算机上一样。你可以方便的实现过程代码共享,提高系统资源的利用率,也可以将以大量数值处理的操作放在处理能力较强的系统上运行,从而减轻前端机的负担。 在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。 RPC 的主要目的是为组件提供一种相互通信的方式,使这些组件之间能够相互发出请求并传递这些请求的结果。 RPC 调用过程 客户机对服务器的一次RPC调用,其内部操作大致有如下十步: 1.调用客户端句柄;执行传送参数 2.调用本地系统内核发送网络消息 3.消息传送到远程主机 4.服务器句柄得到消息并取得参数 5.执行远程过程 6.执行的过程将结果返回服务器句柄 7.服务器句柄返回结果,调用远程系统内核 8.消息传回本地主机 9.客户句柄由内核接收消息 10.客户接收句柄返回的数据 RPC 的应用场景 RPC 在分布式系统中的系统环境建设和应用程序设计中有着广泛韵应用

Java实现 LeetCode 389 找不同

我们两清 提交于 2020-03-17 09:44:40
389. 找不同 给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。 示例: 输入: s = “abcd” t = “abcde” 输出: e 解释: ‘e’ 是那个被添加的字母。 class Solution { // public char findTheDifference(String s, String t) { // char res = t.charAt(t.length()-1); // for(int i=0; i<s.length(); i++){ // res ^= s.charAt(i); // res ^= t.charAt(i); // } // return res; // } public char findTheDifference ( String s , String t ) { char [ ] ss = s . toCharArray ( ) ; char [ ] tt = t . toCharArray ( ) ; char res = tt [ tt . length - 1 ] ; for ( int i = 0 ; i < ss . length ; i ++ ) { res += tt [ i ] - ss [ i ] ; }

stm32--温度传感器DS18B20使用

只谈情不闲聊 提交于 2020-03-17 07:56:54
DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃。主机控制DS18B20完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DS18B20开始转换,再读出温度转换值。本程序仅挂接一个芯片,使用默认的12位转换精度,外接供电电源,读取的温度值高位字节送WDMSB单元,低位字节送WDLSB单元,再按照温度值字节的表示格式及其符号位,经过简单的变换即可得到实际温度值.本例VCC用3.3V 供电,将DQ连接结到stm32的PA1口, DB18B20ForStm32.c #include "ds18b20.h" #define EnableINT() #define DisableINT() #define DS_PORT GPIOA //DS18B20连接口 #define DS_DQIO GPIO_Pin_1 //GPIOA1 #define DS_RCC_PORT RCC_APB2Periph_GPIOA #define DS_PRECISION 0x7f //精度配置寄存器 1f=9位; 3f=10位; 5f=11位; 7f=12位; #define DS_AlarmTH 0x64 #define DS