Вы можете попробовать приведенный ниже код, это сработало правильно.
var inputArray = [1, 6, 6, 6, 6, 4, 3, 5, 5, 5, 2, 2]
inputArray.sort()
let freq = inputArray.sorted { f, s in
inputArray.filter { [110] == f}.count < inputArray.filter { [110] == s}.count
}
print(freq)
Не уверен насчет сложности времени.
Это глупо..., и я думаю, что оказываюсь перед необходимостью приносить извинения за трату общего времени! Но похоже, что я просто должен установить объем на Пользователя вместо Приложения, и я могу запись новое значение.
Не уверенный, если это - то, что Вы после, но можно обновить и сохранить сходить с приложения:
ConsoleApplication1. Свойства. Настройки. Значение по умолчанию. StringSetting = "тест"; ConsoleApplication1. Свойства. Настройки. Значение по умолчанию. Сохраните ();
Править: Моя ошибка. Я неправильно понял цель исходного вопроса.
ОРИГИНАЛЬНЫЙ ТЕКСТ:
Мы часто устанавливаем наши настройки непосредственно в app.config файле, но обычно это для наших пользовательских настроек.
Пример app.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="MySection" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</configSections>
<connectionStrings>
<add name="Default" connectionString="server=MyServer;database=MyDatabase;uid=MyDBUser;password=MyDBPassword;connection timeout=20" providerName="System.Data.SqlClient" />
</connectionStrings>
<MySection>
<add key="RootPath" value="C:\MyDirectory\MyRootFolder" /> <!-- Path to the root folder. -->
<add key="SubDirectory" value="MySubDirectory" /> <!-- Name of the sub-directory. -->
<add key="DoStuff" value="false" /> <!-- Specify if we should do stuff -->
</MySection>
</configuration>
Как Вы ссылаетесь на класс Настроек в своем коде? Вы используете экземпляр по умолчанию или создаете новый объект Настроек? Я полагаю, что экземпляр по умолчанию использует сгенерированное значение разработчика, которое перечитано от конфигурационного файла только, когда свойства открыты. Если Вы создаете новый объект, я полагаю, что значение читается непосредственно из самого конфигурационного файла скорее от сгенерированного разработчиками атрибута, если установка не существует в app.config файле.
Обычно мои настройки будут в библиотеке, а не непосредственно в приложении. Я установил допустимые значения по умолчанию в файле свойств. Я могу затем переопределить их путем добавления соответствующего раздела конфигурации (полученный и измененный из библиотеки app.config файл) в конфигурации приложения (или web.config или app.config, как соответствующего).
Используя:
Settings configuration = new Settings();
string mySetting = configuration.MySetting;
вместо:
string mySetting = Settings.Default.MySetting;
ключ для меня.
Ваш ответ, вероятно, здесь: Самый Простой способ иметь конфигурационный файл в Приложении C# Windows Forms
System.Configuration.Configuration config =ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["oldPlace"].Value = "3";
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
Попробуйте использовать этот код, это просто.
Атте: Эрик Силиезар
Попробуйте:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!--- ->
</configSections>
<userSettings>
<Properties.Settings>
<setting name="MainFormSize" serializeAs="String">
<value>
1022, 732</value>
</setting>
<Properties.Settings>
</userSettings>
<appSettings>
<add key="TrilWareMode" value="-1" />
<add key="OptionsPortNumber" value="1107" />
</appSettings>
</configuration>
Считывание значений из App.Config File:
//This method will read the value of the OptionsPortNumber in the
//above app.config file.
private int LoadConfigData ()
{
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
// AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
// points to the config file.
doc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
int smartRefreshPortNumber = 0;
foreach (XmlNode node in doc.ChildNodes.Item(1))
{
//Searching for the node “”
if (node.LocalName == "appSettings")
{
smartPortNumber =Convert.ToInt32(node.ChildNodes.Item(1).Attributes[1].Value);
}
}
Return smartPortNumber;
}
Обновление значения в App.config:
//This method will read the value of the OptionsPortNumber in the
//above app.config file.
private void UpdateConfigData()
{
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
//Looping through all nodes.
foreach (XmlNode node in doc.ChildNodes.Item(1))
{
//Searching for the node “”
if (node.LocalName == "appSettings")
{
if (!dynamicRefreshCheckBox.Checked)
{
node.ChildNodes.Item(1).Attributes[1].Value = this.portNumberTextBox.Text;
}
else
{
node.ChildNodes.Item(1).Attributes[1].Value = Convert.ToString(0);
}
}
}
//Saving the Updated values in App.config File.Here updating the config
//file in the same path.
doc.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
}