//basic code non strack algorithm just started learning java ignore space and time.
/// {[()]}[][]{}
// {[( -a -> }]) -b -> replace a(]}) -> reverse a( }]))->
//Split string to substring {[()]}, next [], next [], next{}
public class testbrackets {
static String stringfirst;
static String stringsecond;
static int open = 0;
public static void main(String[] args) {
splitstring("(()){}()");
}
static void splitstring(String str){
int len = str.length();
for(int i=0;i<=len-1;i++){
stringfirst="";
stringsecond="";
System.out.println("loop starttttttt");
char a = str.charAt(i);
if(a=='{'||a=='['||a=='(')
{
open = open+1;
continue;
}
if(a=='}'||a==']'||a==')'){
if(open==0){
System.out.println(open+"started with closing brace");
return;
}
String stringfirst=str.substring(i-open, i);
System.out.println("stringfirst"+stringfirst);
String stringsecond=str.substring(i, i+open);
System.out.println("stringsecond"+stringsecond);
replace(stringfirst, stringsecond);
}
i=(i+open)-1;
open=0;
System.out.println(i);
}
}
static void replace(String stringfirst, String stringsecond){
stringfirst = stringfirst.replace('{', '}');
stringfirst = stringfirst.replace('(', ')');
stringfirst = stringfirst.replace('[', ']');
StringBuilder stringfirst1 = new StringBuilder(stringfirst);
stringfirst = stringfirst1.reverse().toString();
System.out.println("stringfirst"+stringfirst);
System.out.println("stringsecond"+stringsecond);
if(stringfirst.equals(stringsecond)){
System.out.println("pass");
}
else{
System.out.println("fail");
System.exit(0);
}
}
}
буферизация является необязательным целым числом, используемым для установки политики буферизации. Пропуск 0, чтобы отключить буферизацию (разрешено только в двоичном режиме), 1, чтобы выбрать буферизацию строки (можно использовать только в текстовом режиме), и целое число> 1, чтобы указать размер в байтах буфера фрагмента фиксированного размера ... ] blockquote>
Следовательно, было бы разумно ожидать, что указание
buffering=2
приведет к использованию буфера размером2B
(и при использовании этого буфера файлы будут сброшены). Однако в текстовом режиме это, кажется, (и документация не совсем ясно указывает, что в этом месте) влияет на подчеркиваниеBufferedWriter
, ноTextIOWrapper
, чьеwrite()
вы в конечном итоге вызываете, по-прежнему «свое дело». .. Начиная с Python 3.7, вы говорите ему не делать этого и немедленно передаете записи в базовый объект, вызываяf.reconfigure(write_through=True)
в файле, который вы открыли.
На самом деле весь код и проверки значения
write_through
уже есть в Python 3.6 (я проверял 3.6.8) (на самом деле_io_TextIOWrapper_write_impl
, то есть_io.TextIOWrapper.write
, идентичны в обе версии), но атрибутwrite_through
не раскрывается (пока).